[
  {
    "path": "CHANGELOG.md",
    "content": "=========\nCHANGELOG\n=========\n\n3.0.0\n=====\n* Introduces Cognito User Pools for authentication along with newer looking UI.\n* Adds API Gateway IAM Authorization\n* Provides support for workshop to run in all regions that are currently supporting Lambda and API Gateway services.\n\n2.0.0\n=====\n* Introduces multi-region stack support for workshop to run in any of the 5 existing regions that have API Gateway and Lambda.\n* Solves hardcoded attribute dependencies, allowing for multiple stacks to run simultaneously in the same AWS account. Resources are created with stack name prepended to the resource names.\n* Removes caching from API Gateway stage to reduce costs for long running stacks.\n\n1.0.0\n==========\n* All commits prior to release 2.0.0 are considered a part of v1.0.0 release.\n* Initial release on Github.\n* Provides baseline zombie survivor chat application via CloudFormation stack, Lambda functions, DynamoDB tables, and API Gateway resources.\n"
  },
  {
    "path": "ChatServiceLambdaFunctions/ZombieGetMessages.js",
    "content": "console.log('Loading function');\nvar aws = require('aws-sdk');\nvar ddb;\n\nvar theContext;\n\nfunction dynamoCallback(err, response) {\n    if (err) {\n        console.log('error' + err, err.stack); // an error occurred\n        theContext.fail(err);\n    }\n\n    else {\n        console.log('result: ' + JSON.stringify(response))        // successful response\n        theContext.succeed(response);\n    }\n}\n\nfunction init(context) {\n  if(!ddb) {\n    var stackName = context.functionName.split('-z0mb1es-')[0];\n    var stackRegion = context.functionName.split('-GetMessagesFromDynamoDB-')[1];\n    ddb = new aws.DynamoDB({\n      region: stackRegion,\n      params: { TableName: stackName + \"-messages\" }\n    });\n  }\n}\n\nexports.handler = function(event, context) {\n    init(context);\n    theContext = context;\n    var params = {\n        \"KeyConditions\": {\n            \"channel\": {\n                \"AttributeValueList\": [{\n                    \"S\": \"default\"\n                }],\n                \"ComparisonOperator\": \"EQ\"\n            }\n        },\n        \"Limit\": 20,\n            \"ScanIndexForward\":false\n    }\n    console.log(\"Querying DynamoDB\");\n    var response = ddb.query(params, dynamoCallback);\n}"
  },
  {
    "path": "ChatServiceLambdaFunctions/ZombiePostMessage.js",
    "content": "// Processes incoming messages for Zombie chat service\nvar aws = require('aws-sdk');\nvar ddb;\nvar querystring = require('querystring');\n\nvar theContext;\nvar message;\nvar from;\nvar numMedia;\nvar mediaURL;\nvar timestamp;\nvar channel = 'default';\n\n\nexports.handler = function(event, context) {\n    init(context);\n    theContext = context;\n\n    if(event.message == null || event.message == 'null' || event.name == null || event.name == 'null') {\n        return context.fail(\"Message and Name cannot be null\");\n    } else {\n        message = event.message;\n        from = event.name;\n    }\n\n    if (event.timestamp == null || event.timestamp == 'null') {\n        event.timestamp = \"\" + new Date().getTime();\n        timestamp = event.timestamp;\n    }\n\n    /**\n     * For Debubugging input params to the lambda function\n    console.log('Message: ' + message);\n    console.log('Sender: ' + from);\n    console.log('Channel: ' + channel);\n    */\n\n    var DDBparams = {\n        \"Item\": {\n            \"channel\":{\"S\":channel},\n            \"message\":{\"S\":message},\n            \"timestamp\":{\"N\":timestamp},\n            \"name\":{\"S\":from}\n        }\n    };\n\n    dynamoPut(DDBparams);\n};\n\nfunction init(context) {\n  if(!ddb) {\n    console.log(\"Initializing DynamoDB client.\");\n    var stackName = context.functionName.split('-z0mb1es-')[0];\n    var stackRegion = context.functionName.split('-WriteMessagesToDynamoDB-')[1];\n    ddb = new aws.DynamoDB({\n      region: stackRegion,\n      params: { TableName: stackName + \"-messages\" }\n    });\n  }\n}\n\nfunction dynamoPut(params){\n    console.log(\"Putting item into DynamoDB\");\n    ddb.putItem(params, dynamoCallback);\n}\n\nfunction dynamoCallback(err, response) {\n  if (err) {\n      console.log('error' + err, err.stack); // an error occurred\n      return theContext.fail(\"There was an error.\");\n  } else {\n      console.log('Success: ' + '{Sender: ' + from + ', ' + 'Message: ' + message + '}');\n      return theContext.succeed();\n  }\n}"
  },
  {
    "path": "CloudFormation/CreateZombieWorkshop.json",
    "content": "{\n  \"AWSTemplateFormatVersion\": \"2010-09-09\",\n  \"Description\": \"AWS CloudFormation template to launch resources for a serverless group chat. This was designed for the AWS Zombie Apocalypse Workshop: Building Serverless Microservices\",\n\n  \"Parameters\": {\n    \"NumberOfTeammates\": {\n      \"Description\": \"How many teammates do you have? Input that here, one for each of your teammates. Don't include yourself\",\n      \"Type\": \"Number\",\n      \"MinValue\": \"0\",\n      \"MaxValue\": \"10\",\n      \"Default\": \"0\"\n    }\n  },\n\n  \"Mappings\": {\n    \"AllowedRegions\": {\n      \"us-west-2\": {\n        \"S3Endpoint\": \"https://s3-us-west-2\",\n        \"S3ContentsBucket\": \"aws-zombie-workshop-us-west-2\",\n        \"CognitoRegion\": \"us-west-2\"\n      },\n      \"us-east-1\": {\n        \"S3Endpoint\": \"https://s3\",\n        \"S3ContentsBucket\": \"aws-zombie-workshop-us-east-1\",\n        \"CognitoRegion\": \"us-east-1\"\n      },\n      \"us-east-2\": {\n        \"S3Endpoint\": \"https://s3-us-east-2\",\n        \"S3ContentsBucket\": \"aws-zombie-workshop-us-east-2\",\n        \"CognitoRegion\": \"us-east-2\"\n      },\n      \"eu-west-1\": {\n        \"S3Endpoint\": \"https://s3-eu-west-1\",\n        \"S3ContentsBucket\": \"aws-zombie-workshop-eu-west-1\",\n        \"CognitoRegion\": \"eu-west-1\"\n      },\n      \"eu-central-1\": {\n        \"S3Endpoint\": \"https://s3-eu-central-1\",\n        \"S3ContentsBucket\": \"aws-zombie-workshop-eu-central-1\",\n        \"CognitoRegion\": \"eu-central-1\"\n      },\n      \"ap-northeast-1\": {\n        \"S3Endpoint\": \"https://s3-ap-northeast-1\",\n        \"S3ContentsBucket\": \"aws-zombie-workshop-ap-northeast-1\",\n        \"CognitoRegion\": \"ap-northeast-1\"\n      },\n      \"ap-northeast-2\": {\n        \"S3Endpoint\": \"https://s3-ap-northeast-2\",\n        \"S3ContentsBucket\": \"aws-zombie-workshop-ap-northeast-2\",\n        \"CognitoRegion\": \"ap-northeast-2\"\n      },\n      \"ap-southeast-1\": {\n        \"S3Endpoint\": \"https://s3-ap-southeast-1\",\n        \"S3ContentsBucket\": \"aws-zombie-workshop-ap-southeast-1\",\n        \"CognitoRegion\": \"us-east-1\"\n      },\n      \"ap-southeast-2\": {\n        \"S3Endpoint\": \"https://s3-ap-southeast-2\",\n        \"S3ContentsBucket\": \"aws-zombie-workshop-ap-southeast-2\",\n        \"CognitoRegion\": \"us-east-1\"\n      }\n    }\n  },\n\n  \"Conditions\": {\n    \"CreateIamResources\": {\n      \"Fn::Not\": [{\n        \"Fn::Equals\": [\n          {\"Ref\": \"NumberOfTeammates\"}, \"0\"\n        ]\n      }]\n    }\n  },\n\n  \"Resources\": {\n    \"ZombieLabLambdaRole\": {\n      \"Type\": \"AWS::IAM::Role\",\n      \"Properties\": {\n        \"AssumeRolePolicyDocument\": {\n          \"Version\": \"2012-10-17\",\n          \"Statement\": [{\n            \"Effect\": \"Allow\",\n            \"Principal\": {\"Service\": [\"lambda.amazonaws.com\", \"apigateway.amazonaws.com\"], \"Federated\": \"cognito-identity.amazonaws.com\"},\n            \"Action\": [\"sts:AssumeRole\", \"sts:AssumeRoleWithWebIdentity\"]\n          }]\n        },\n        \"Path\": \"/\",\n        \"Policies\": [{\n          \"PolicyName\": \"root\",\n          \"PolicyDocument\": {\n            \"Version\": \"2012-10-17\",\n            \"Statement\": [{\n              \"Effect\": \"Allow\",\n              \"Action\": [\"logs:CreateLogGroup\",\"logs:CreateLogStream\",\"logs:PutLogEvents\"],\n              \"Resource\": \"arn:aws:logs:*:*:*\"\n            },\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\"cloudformation:*\"],\n              \"Resource\": [\"*\"]\n            },\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\"lambda:*\"],\n              \"Resource\": [\"*\"]\n            },\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\"execute-api:*\"],\n              \"Resource\": [\"*\"]\n            },\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\"dynamodb:*\"],\n              \"Resource\": [\"*\"]\n            },\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\"kinesis:*\"],\n              \"Resource\": [\"*\"]\n            },\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\"es:*\"],\n              \"Resource\": [\"*\"]\n            },\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\"s3:*\"],\n              \"Resource\": [\"*\"]\n            },\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\"apigateway:*\"],\n              \"Resource\": [\"*\", \"arn:aws:apigateway:*::/*\"]\n            },\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\n                \"mobileanalytics:PutEvents\",\n                \"cognito-sync:*\",\n                \"cognito-identity:*\",\n                \"cognito-idp:*\"\n              ],\n              \"Resource\": [\"*\"]\n            },\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\"iam:*\"],\n              \"Resource\": [\"*\"]\n            }]\n          }\n        }]\n      }\n    },\n\n    \"IamUserPolicy\": {\n      \"Type\": \"AWS::IAM::Policy\",\n      \"Condition\": \"CreateIamResources\",\n      \"Properties\": {\n        \"PolicyName\": \"ZombieLabUserPolicy\",\n        \"PolicyDocument\": {\n          \"Statement\": [\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\"*\"],\n              \"Resource\": [\"*\"]\n            },\n            {\n              \"Effect\": \"Deny\",\n              \"Action\": [\"aws-portal:*\"],\n              \"Resource\": [\"*\"]\n            }\n          ]\n        },\n        \"Groups\": [{ \"Fn::GetAtt\": [\"CreateIAMUsers\", \"IamGroup\"]}]\n      },\n      \"DependsOn\": [\"ZombieLabLambdaRole\",\"CreateIAMUsers\"]\n    },\n\n    \"APIinvokePolicy\": {\n      \"Type\": \"AWS::IAM::Policy\",\n      \"Properties\": {\n        \"Roles\": [{ \"Ref\" : \"ZombieLabLambdaRole\" }],\n        \"PolicyName\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"apiinvokepolicy\"]]},\n        \"PolicyDocument\": {\n          \"Statement\": [\n            {\n              \"Effect\": \"Allow\",\n              \"Action\": [\"execute-api:invoke\"],\n              \"Resource\": [\n                { \"Fn::Join\" : [\"\", [\"arn:aws:execute-api:\", { \"Ref\" : \"AWS::Region\" }, \":\", { \"Ref\" : \"AWS::AccountId\" }, \":\", { \"Fn::GetAtt\": [\"CreateAPIGateway\", \"RestApiID\"]}, \"/ZombieWorkshopStage/zombie/POST/message\" ]]},\n                { \"Fn::Join\" : [\"\", [\"arn:aws:execute-api:\", { \"Ref\" : \"AWS::Region\" }, \":\", { \"Ref\" : \"AWS::AccountId\" }, \":\", { \"Fn::GetAtt\": [\"CreateAPIGateway\", \"RestApiID\"]}, \"/ZombieWorkshopStage/zombie/GET/message\" ]]},\n                { \"Fn::Join\" : [\"\", [\"arn:aws:execute-api:\", { \"Ref\" : \"AWS::Region\" }, \":\", { \"Ref\" : \"AWS::AccountId\" }, \":\", { \"Fn::GetAtt\": [\"CreateAPIGateway\", \"RestApiID\"]}, \"/ZombieWorkshopStage/zombie/POST/talkers\" ]]},\n                { \"Fn::Join\" : [\"\", [\"arn:aws:execute-api:\", { \"Ref\" : \"AWS::Region\" }, \":\", { \"Ref\" : \"AWS::AccountId\" }, \":\", { \"Fn::GetAtt\": [\"CreateAPIGateway\", \"RestApiID\"]}, \"/ZombieWorkshopStage/zombie/GET/talkers\" ]]}\n              ]\n            }\n          ]\n        }\n      },\n      \"DependsOn\": [\"ZombieLabLambdaRole\", \"CreateAPIGateway\"]\n    },\n\n    \"S3BucketPolicy\": {\n      \"Type\": \"AWS::S3::BucketPolicy\",\n      \"Properties\": {\n        \"Bucket\": {\"Ref\" : \"S3BucketForWebsiteContent\"},\n        \"PolicyDocument\": {\n          \"Statement\":[{\n            \"Action\":[\"s3:GetObject\"],\n            \"Effect\":\"Allow\",\n            \"Resource\": { \"Fn::Join\" : [\"\", [\"arn:aws:s3:::\", { \"Ref\" : \"S3BucketForWebsiteContent\" } , \"/*\" ]]},\n            \"Principal\": \"*\"\n          }]\n        }\n      }\n    },\n\n    \"MessagesDynamoDBTable\": {\n      \"Type\": \"AWS::DynamoDB::Table\",\n      \"Properties\": {\n        \"TableName\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"messages\"]]},\n        \"AttributeDefinitions\": [\n          {\n            \"AttributeName\": \"channel\",\n            \"AttributeType\": \"S\"\n          },\n          {\n            \"AttributeName\": \"timestamp\",\n            \"AttributeType\": \"N\"\n          }\n        ],\n        \"KeySchema\": [\n          {\"AttributeName\": \"channel\", \"KeyType\": \"HASH\"},\n          {\"AttributeName\": \"timestamp\", \"KeyType\": \"RANGE\"}\n        ],\n        \"ProvisionedThroughput\": {\n          \"ReadCapacityUnits\": 10,\n          \"WriteCapacityUnits\": 10\n        }\n      }\n    },\n\n    \"TalkersDynamoDBTable\": {\n      \"Type\": \"AWS::DynamoDB::Table\",\n      \"Properties\": {\n        \"TableName\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"talkers\"]]},\n        \"AttributeDefinitions\": [\n          {\n            \"AttributeName\": \"channel\",\n            \"AttributeType\": \"S\"\n          },\n          {\n            \"AttributeName\": \"talktime\",\n            \"AttributeType\": \"N\"\n          }\n        ],\n        \"KeySchema\": [\n          {\"AttributeName\": \"channel\", \"KeyType\": \"HASH\"},\n          {\"AttributeName\": \"talktime\", \"KeyType\": \"RANGE\"}\n        ],\n        \"ProvisionedThroughput\": {\n          \"ReadCapacityUnits\": 10,\n          \"WriteCapacityUnits\": 10\n        }\n      }\n    },\n\n    \"UsersDynamoDBTable\": {\n      \"Type\": \"AWS::DynamoDB::Table\",\n      \"Properties\": {\n        \"TableName\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"users\"]]},\n        \"AttributeDefinitions\": [\n          {\n            \"AttributeName\": \"userid\",\n            \"AttributeType\": \"S\"\n          },\n          {\n            \"AttributeName\": \"phone\",\n            \"AttributeType\": \"S\"\n          },\n          {\n            \"AttributeName\": \"slackuser\",\n            \"AttributeType\": \"S\"\n          },\n          {\n            \"AttributeName\": \"slackteamdomain\",\n            \"AttributeType\": \"S\"\n          }\n        ],\n        \"KeySchema\": [\n          {\n            \"AttributeName\": \"userid\",\n            \"KeyType\": \"HASH\"\n          }\n        ],\n        \"ProvisionedThroughput\": {\n          \"ReadCapacityUnits\": 5,\n          \"WriteCapacityUnits\": 5\n        },\n        \"GlobalSecondaryIndexes\": [\n          {\n            \"IndexName\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"phoneindex\"]]},\n            \"KeySchema\": [\n              {\n                \"AttributeName\": \"phone\",\n                \"KeyType\": \"HASH\"\n              }\n            ],\n            \"Projection\": {\n              \"NonKeyAttributes\": [\"confirmed\", \"camp\"],\n              \"ProjectionType\": \"INCLUDE\"\n            },\n            \"ProvisionedThroughput\": {\n              \"ReadCapacityUnits\": 5,\n              \"WriteCapacityUnits\": 5\n            }\n          },\n          {\n            \"IndexName\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"slackindex\"]]},\n            \"KeySchema\": [\n              {\n                \"AttributeName\": \"slackuser\",\n                \"KeyType\": \"HASH\"\n              },\n              {\n                \"AttributeName\": \"slackteamdomain\",\n                \"KeyType\": \"RANGE\"\n              }\n            ],\n            \"Projection\": {\n              \"NonKeyAttributes\": [\"confirmed\", \"camp\"],\n              \"ProjectionType\": \"INCLUDE\"\n            },\n            \"ProvisionedThroughput\": {\n              \"ReadCapacityUnits\": 5,\n              \"WriteCapacityUnits\": 5\n            }\n          }\n        ]\n      }\n    },\n\n    \"S3BucketForWebsiteContent\": {\n      \"Type\": \"AWS::S3::Bucket\",\n      \"Properties\": {\n        \"AccessControl\": \"PublicRead\",\n        \"WebsiteConfiguration\": {\n           \"IndexDocument\": \"index.html\",\n           \"ErrorDocument\": \"error.html\"\n        }\n      },\n      \"DependsOn\" : \"ZombieLabLambdaRole\"\n    },\n\n    \"PutWebsiteFilesInS3\": {\n      \"Type\": \"Custom::PutWebsiteFilesInS3\",\n      \"Properties\": {\n        \"ServiceToken\": { \"Fn::GetAtt\" : [\"S3GetFilesFunction\", \"Arn\"] },\n        \"StackName\": { \"Ref\": \"AWS::StackName\" },\n        \"BucketName\": { \"Fn::FindInMap\" : [ \"AllowedRegions\", { \"Ref\" : \"AWS::Region\" }, \"S3ContentsBucket\"]},\n        \"WebsiteBucketCreatedEarlier\": { \"Ref\" : \"S3BucketForWebsiteContent\" },\n        \"S3Region\": { \"Ref\" : \"AWS::Region\" }\n      },\n      \"DependsOn\": [\n        \"ZombieLabLambdaRole\",\n        \"S3BucketForWebsiteContent\"\n      ]\n    },\n\n    \"S3GetFilesFunction\": {\n      \"Type\": \"AWS::Lambda::Function\",\n      \"Properties\": {\n        \"Handler\": \"S3GetFilesFunction.handler\",\n        \"Role\": { \"Fn::GetAtt\": [\"ZombieLabLambdaRole\", \"Arn\"] },\n        \"Code\": {\n          \"S3Bucket\": { \"Fn::FindInMap\" : [ \"AllowedRegions\", { \"Ref\" : \"AWS::Region\" }, \"S3ContentsBucket\"]},\n          \"S3Key\": \"S3GetFilesFunction.zip\"\n        },\n        \"Runtime\": \"nodejs4.3\",\n        \"Timeout\": \"120\"\n      },\n      \"DependsOn\": [\n        \"ZombieLabLambdaRole\",\n        \"S3BucketForWebsiteContent\"\n      ]\n    },\n\n    \"CognitoTriggerBuild\": {\n      \"Type\": \"AWS::Lambda::Function\",\n      \"Properties\": {\n        \"Handler\": \"index.handler\",\n        \"Role\": { \"Fn::GetAtt\": [\"ZombieLabLambdaRole\", \"Arn\"] },\n        \"Code\": {\n          \"S3Bucket\": { \"Ref\" : \"S3BucketForWebsiteContent\" },\n          \"S3Key\": \"cognitoTriggerBuild.zip\"\n        },\n        \"Runtime\": \"nodejs4.3\",\n        \"Timeout\": \"120\"\n      },\n      \"DependsOn\": [\n        \"ZombieLabLambdaRole\",\n        \"S3BucketForWebsiteContent\",\n        \"PutWebsiteFilesInS3\"\n      ]\n    },\n\n    \"CreateCognitoTrigger\": {\n      \"Type\": \"Custom::CreateCognitoTrigger\",\n      \"Properties\": {\n        \"ServiceToken\": { \"Fn::GetAtt\": [\"CognitoTriggerBuild\", \"Arn\"] },\n        \"region\": { \"Ref\": \"AWS::Region\" },\n        \"CognitoRegion\": { \"Fn::FindInMap\" : [ \"AllowedRegions\", { \"Ref\" : \"AWS::Region\" }, \"CognitoRegion\"]},\n        \"LambdaFunctionBucket\": { \"Fn::FindInMap\" : [ \"AllowedRegions\", { \"Ref\" : \"AWS::Region\" }, \"S3ContentsBucket\"]},\n        \"StackName\": { \"Ref\": \"AWS::StackName\" },\n        \"IamRole\": { \"Fn::GetAtt\": [\"ZombieLabLambdaRole\", \"Arn\"] }\n      },\n      \"DependsOn\": [\n        \"S3BucketForWebsiteContent\",\n        \"ZombieLabLambdaRole\",\n        \"PutWebsiteFilesInS3\",\n        \"WriteMessagesToDynamoDB\",\n        \"GetMessagesFromDynamoDB\",\n        \"MessagesDynamoDBTable\"\n      ]\n    },\n\n    \"CreateAPIGateway\": {\n      \"Type\": \"Custom::CreateAPIGateway\",\n      \"Properties\": {\n        \"ServiceToken\": { \"Fn::GetAtt\": [\"APIGatewayFunction\", \"Arn\"] },\n        \"postmessagelambdaapiuri\": { \"Fn::Join\": [ \"\", [ \"arn:aws:apigateway:\", { \"Ref\": \"AWS::Region\" }, \":lambda:path/2015-03-31/functions/\", { \"Fn::GetAtt\": [\"WriteMessagesToDynamoDB\", \"Arn\"] }, \"/invocations\" ] ] },\n        \"getmessagelambdaapiuri\": { \"Fn::Join\": [ \"\", [ \"arn:aws:apigateway:\", { \"Ref\": \"AWS::Region\" }, \":lambda:path/2015-03-31/functions/\", { \"Fn::GetAtt\": [\"GetMessagesFromDynamoDB\", \"Arn\"] }, \"/invocations\" ] ] },\n        \"region\": { \"Ref\": \"AWS::Region\" },\n        \"iamrole\": { \"Fn::GetAtt\": [\"ZombieLabLambdaRole\", \"Arn\"] },\n        \"s3bucket\": { \"Ref\": \"S3BucketForWebsiteContent\" },\n        \"s3key\": \"S3/assets/js/constants.js\",\n        \"apiname\": { \"Fn::Join\": [ \"\", [ { \"Ref\": \"AWS::StackName\" }, \"- Zombie Workshop API Gateway\" ] ] }\n      },\n      \"DependsOn\": [\n        \"S3BucketForWebsiteContent\",\n        \"ZombieLabLambdaRole\",\n        \"PutWebsiteFilesInS3\",\n        \"WriteMessagesToDynamoDB\",\n        \"GetMessagesFromDynamoDB\",\n        \"MessagesDynamoDBTable\"\n      ]\n    },\n\n    \"APIGatewayFunction\": {\n      \"Type\": \"AWS::Lambda::Function\",\n      \"Properties\": {\n        \"Handler\": \"LambdaHandler.handleGatewayEvent\",\n        \"Role\": { \"Fn::GetAtt\" : [\"ZombieLabLambdaRole\", \"Arn\"] },\n        \"Code\": {\n          \"S3Bucket\": { \"Ref\": \"S3BucketForWebsiteContent\" },\n          \"S3Key\": \"WK305_Gateway.zip\"\n        },\n        \"Runtime\": \"nodejs4.3\",\n        \"Timeout\": \"300\",\n        \"MemorySize\": \"1536\"\n      },\n      \"DependsOn\": [\n        \"MessagesDynamoDBTable\",\n        \"ZombieLabLambdaRole\",\n        \"S3BucketForWebsiteContent\",\n        \"PutWebsiteFilesInS3\"\n      ]\n    },\n\n    \"CognitoPoolsFunction\": {\n      \"Type\": \"AWS::Lambda::Function\",\n      \"Properties\": {\n        \"Handler\": \"cognito.handler\",\n        \"Role\": { \"Fn::GetAtt\" : [\"ZombieLabLambdaRole\", \"Arn\"] },\n        \"Code\": {\n          \"S3Bucket\": { \"Ref\": \"S3BucketForWebsiteContent\" },\n          \"S3Key\": \"cognito.zip\"\n        },\n        \"Runtime\": \"nodejs4.3\",\n        \"Timeout\": \"300\",\n        \"MemorySize\": \"1536\"\n      },\n      \"DependsOn\": [\n        \"ZombieLabLambdaRole\",\n        \"S3BucketForWebsiteContent\",\n        \"PutWebsiteFilesInS3\",\n        \"CreateAPIGateway\"\n      ]\n    },\n\n    \"CreateCognitoPools\": {\n      \"Type\": \"Custom::CognitoPoolsFunction\",\n      \"Properties\": {\n        \"ServiceToken\": { \"Fn::GetAtt\": [\"CognitoPoolsFunction\", \"Arn\"] },\n        \"region\": { \"Ref\": \"AWS::Region\" },\n        \"CognitoRegion\": { \"Fn::FindInMap\" : [ \"AllowedRegions\", { \"Ref\" : \"AWS::Region\" }, \"CognitoRegion\"]},\n        \"cognitoRoleARN\": { \"Fn::GetAtt\": [\"ZombieLabLambdaRole\", \"Arn\"] },\n        \"bucket\": { \"Ref\": \"S3BucketForWebsiteContent\" },\n        \"constantsFile\": \"S3/assets/js/constants.js\",\n        \"StackName\": { \"Ref\": \"AWS::StackName\" }\n      },\n      \"DependsOn\": [\n        \"S3BucketForWebsiteContent\",\n        \"ZombieLabLambdaRole\",\n        \"PutWebsiteFilesInS3\",\n        \"WriteMessagesToDynamoDB\",\n        \"GetMessagesFromDynamoDB\",\n        \"MessagesDynamoDBTable\"\n      ]\n    },\n\n    \"WriteMessagesToDynamoDB\": {\n      \"Type\": \"AWS::Lambda::Function\",\n      \"Properties\": {\n        \"Handler\": \"ZombiePostMessage.handler\",\n        \"Role\": { \"Fn::GetAtt\" : [\"ZombieLabLambdaRole\", \"Arn\"] },\n        \"FunctionName\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"z0mb1es\", \"WriteMessagesToDynamoDB\", {\"Ref\": \"AWS::Region\"}]]},\n        \"Code\": {\n          \"S3Bucket\": { \"Ref\" : \"S3BucketForWebsiteContent\" },\n          \"S3Key\": \"ZombiePostMessage.zip\"\n        },\n        \"Runtime\": \"nodejs4.3\",\n        \"Timeout\": \"60\"\n      },\n      \"DependsOn\": [\n        \"MessagesDynamoDBTable\",\n        \"S3BucketForWebsiteContent\",\n        \"PutWebsiteFilesInS3\"\n      ]\n    },\n\n    \"GetMessagesFromDynamoDB\": {\n      \"Type\": \"AWS::Lambda::Function\",\n      \"Properties\": {\n        \"Handler\": \"ZombieGetMessages.handler\",\n        \"Role\": { \"Fn::GetAtt\" : [\"ZombieLabLambdaRole\", \"Arn\"] },\n        \"FunctionName\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"z0mb1es\", \"GetMessagesFromDynamoDB\", {\"Ref\": \"AWS::Region\"}]]},\n        \"Code\": {\n          \"S3Bucket\": { \"Ref\" : \"S3BucketForWebsiteContent\" },\n          \"S3Key\": \"ZombieGetMessages.zip\"\n        },\n        \"Runtime\": \"nodejs4.3\",\n        \"Timeout\": \"60\"\n      },\n      \"DependsOn\" : [\n        \"MessagesDynamoDBTable\",\n        \"S3BucketForWebsiteContent\",\n        \"PutWebsiteFilesInS3\"\n      ]\n    },\n\n    \"WriteTalkersToDynamoDB\": {\n      \"Type\": \"AWS::Lambda::Function\",\n      \"Properties\": {\n        \"Handler\": \"index.handler\",\n        \"Role\": { \"Fn::GetAtt\" : [\"ZombieLabLambdaRole\", \"Arn\"] },\n        \"FunctionName\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"z0mb1es\", \"WriteTalkersToDynamoDB\", {\"Ref\": \"AWS::Region\"}]]},\n        \"Code\": {\n          \"ZipFile\": { \"Fn::Join\": [\"\", [\n            \"console.log('Loading function');\\n\",\n            \"\\n\",\n            \"var AWS = require('aws-sdk');\\n\",\n            \"\\n\",\n            \"var docClient = new AWS.DynamoDB.DocumentClient({\\n\",\n            \"  region: '\", {\"Ref\": \"AWS::Region\"}, \"',\\n\",\n            \"});\\n\",\n            \"\\n\",\n            \"exports.handler = function(event, context) {\\n\",\n            \"  console.log('Received event:', JSON.stringify(event, null, 2));\\n\",\n            \"\\n\",\n            \"  if (event.name == null) {\\n\",\n            \"    context.fail(new Error('name cannot be null: ' + JSON.stringify(event, null, 2)));\\n\",\n            \"  }\\n\",\n            \"\\n\",\n            \"  var params = {\\n\",\n            \"    TableName: '\", {\"Ref\": \"AWS::StackName\"}, \"-talkers',\\n\",\n            \"    Item: {\\n\",\n            \"      channel: 'default',\\n\",\n            \"      talktime: Date.now(),\\n\",\n            \"      name: event.name\\n\",\n            \"    }\\n\",\n            \"  };\\n\",\n            \"\\n\",\n            \"  docClient.put(params, function(err, data) {\\n\",\n            \"    if (err) {\\n\",\n            \"      console.log('DDB Err:' + err);\\n\",\n            \"      context.fail(new Error('DynamoDB Error: ' + err));\\n\",\n            \"    } else {\\n\",\n            \"      console.log(data);\\n\",\n            \"      context.done(null, {Status: 'Success'});\\n\",\n            \"    }\\n\",\n            \"\\n\",\n            \"  });\\n\",\n            \"\\n\",\n            \"};\\n\"\n            ]]}\n        },\n        \"Runtime\": \"nodejs4.3\",\n        \"Timeout\": \"10\"\n      },\n      \"DependsOn\" : [\"TalkersDynamoDBTable\",\"ZombieLabLambdaRole\"]\n    },\n\n    \"GetTalkersFromDynamoDB\": {\n      \"Type\": \"AWS::Lambda::Function\",\n      \"Properties\": {\n        \"Handler\": \"index.handler\",\n        \"Role\": { \"Fn::GetAtt\" : [\"ZombieLabLambdaRole\", \"Arn\"] },\n        \"FunctionName\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"z0mb1es\", \"GetTalkersFromDynamoDB\", {\"Ref\": \"AWS::Region\"}]]},\n        \"Code\": {\n          \"ZipFile\": { \"Fn::Join\": [\"\", [\n            \"console.log('Loading function');\\n\",\n            \"\\n\",\n            \"var AWS = require('aws-sdk');\\n\",\n            \"\\n\",\n            \"var docClient = new AWS.DynamoDB.DocumentClient({\\n\",\n            \"  region: '\", {\"Ref\": \"AWS::Region\"}, \"',\\n\",\n            \"});\\n\",\n            \"\\n\",\n            \"exports.handler = function(event, context) {\\n\",\n            \"  console.log('Received event:', JSON.stringify(event, null, 2));\\n\",\n            \"\\n\",\n            \"  var params = {\\n\",\n            \"    TableName: '\", {\"Ref\": \"AWS::StackName\"}, \"-talkers',\\n\",\n            \"    KeyConditionExpression: 'channel = :hkey and talktime > :rkey',\\n\",\n            \"    ExpressionAttributeValues: {\\n\",\n            \"      ':hkey': 'default',\\n\",\n            \"      ':rkey': (Date.now() - 2000)\\n\",\n            \"    },\\n\",\n            \"    ConsistentRead: true\\n\",\n            \"  };\\n\",\n            \"\\n\",\n            \"  docClient.query(params, function(err, data) {\\n\",\n            \"    if (err) {\\n\",\n            \"      console.log('DDB Err:' + err);\\n\",\n            \"      context.fail(new Error('DynamoDB Error: ' + err));\\n\",\n            \"    } else {\\n\",\n            \"      console.log((Date.now() - 2000));\\n\",\n            \"      console.log(data);\\n\",\n            \"      Talkers = [];\\n\",\n            \"      Pushed = {};\\n\",\n            \"      data.Items.forEach(function(talker, index, array) {\\n\",\n            \"        if (Pushed.hasOwnProperty(talker.name) == false) {\\n\",\n            \"          Talkers.push(talker.name);\\n\",\n            \"          Pushed[talker.name] = true;\\n\",\n            \"        }\\n\",\n            \"\\n\",\n            \"      });\\n\",\n            \"      context.done(null, {\\n\",\n            \"        Talkers: Talkers\\n\",\n            \"      });\\n\",\n            \"    }\\n\",\n            \"\\n\",\n            \"  });\\n\",\n            \"};\\n\"\n            ]]}\n        },\n        \"Runtime\": \"nodejs4.3\",\n        \"Timeout\": \"10\"\n      },\n      \"DependsOn\" : [\"TalkersDynamoDBTable\", \"ZombieLabLambdaRole\"]\n    },\n\n    \"CreateIAMUsers\": {\n      \"Type\": \"Custom::CreateIAMUsers\",\n        \"Condition\": \"CreateIamResources\",\n        \"Properties\": {\n          \"ServiceToken\": { \"Fn::GetAtt\": [\"IamUsersFunction\", \"Arn\"] },\n          \"StackName\": { \"Ref\": \"AWS::StackName\" },\n          \"region\": { \"Ref\": \"AWS::Region\" },\n          \"IamUsers\": { \"Ref\": \"NumberOfTeammates\"}\n        },\n        \"DependsOn\": [\n          \"ZombieLabLambdaRole\"\n        ]\n    },\n\n    \"IamUsersFunction\": {\n      \"Type\": \"AWS::Lambda::Function\",\n      \"Condition\": \"CreateIamResources\",\n      \"Properties\": {\n        \"Handler\": \"IamLambdaHandler.handleIAM\",\n        \"Role\": { \"Fn::GetAtt\": [\"ZombieLabLambdaRole\", \"Arn\"] },\n        \"Code\": {\n          \"S3Bucket\": { \"Ref\" : \"S3BucketForWebsiteContent\" },\n          \"S3Key\": \"IamUsers.zip\"\n        },\n        \"Runtime\": \"nodejs4.3\",\n        \"Timeout\": \"60\"\n      },\n      \"DependsOn\": [\n        \"ZombieLabLambdaRole\",\n        \"S3BucketForWebsiteContent\",\n        \"PutWebsiteFilesInS3\",\n        \"S3GetFilesFunction\"\n      ]\n    }\n  },\n\n  \"Outputs\": {\n    \"MyStackRegion\": {\n      \"Value\": { \"Ref\": \"AWS::Region\" },\n      \"Description\": \"The region where the stack was created.\"\n    },\n    \"MyChatRoomURL\": {\n      \"Value\": { \"Fn::Join\": [ \"\", [ { \"Fn::FindInMap\" : [ \"AllowedRegions\", { \"Ref\" : \"AWS::Region\" }, \"S3Endpoint\"]}, \".amazonaws.com/\", { \"Ref\": \"S3BucketForWebsiteContent\" }, \"/S3/index.html\" ] ] },\n      \"Description\": \"The URL to access your newly created chat.\"\n    },\n    \"DynamoDBMessagesTableName\": {\n      \"Value\": { \"Ref\": \"MessagesDynamoDBTable\" },\n      \"Description\": \"Table name of the newly created Messages DynamoDB table that will contain chat messages.\"\n    },\n    \"DynamoDBTalkersTableName\": {\n      \"Value\": { \"Ref\": \"TalkersDynamoDBTable\" },\n      \"Description\": \"Table name of the newly created Talkers DynamoDB table that will contain metadata about survivors who are typing.\"\n    },\n    \"DynamoDBUsersTableName\": {\n      \"Value\": { \"Ref\": \"UsersDynamoDBTable\" },\n      \"Description\": \"Table name of the newly created Users DynamoDB table that will contain records about registered users for the app.\"\n    },\n    \"DynamoDBUsersSlackIndex\": {\n      \"Value\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"slackindex\"]]},\n      \"Description\": \"Name of the Slack index associated with the newly created Users DynamoDB table.\"\n    },\n    \"DynamoDBUsersPhoneIndex\": {\n      \"Value\": { \"Fn::Join\": [\"-\", [{\"Ref\": \"AWS::StackName\"}, \"phoneindex\"]]},\n      \"Description\": \"Name of the Phone index associated with the newly created Users DynamoDB table.\"\n    },\n    \"Bucket\": {\n      \"Value\": { \"Ref\": \"S3BucketForWebsiteContent\" },\n      \"Description\": \"The S3 bucket which contains the chat web app contents.\"\n    },\n    \"DynamoDBWriteMessagesLambdaFunction\": {\n      \"Value\": { \"Ref\": \"WriteMessagesToDynamoDB\" },\n      \"Description\": \"This Lambda function is used for writing chat messages to the Messages table.\"\n    },\n    \"DynamoDBGetMessagesLambdaFunction\": {\n      \"Value\": { \"Ref\": \"GetMessagesFromDynamoDB\" },\n      \"Description\": \"This Lambda function is used for getting chat messages from the Messages table.\"\n    },\n    \"WriteTalkersToDynamoDBLambdaFunction\": {\n      \"Value\": { \"Ref\": \"WriteTalkersToDynamoDB\" },\n      \"Description\": \"This Lambda function is used for writing talkers to the Talkers table.\"\n    },\n    \"GetTalkersFromDynamoDBLambdaFunction\": {\n      \"Value\": { \"Ref\": \"GetTalkersFromDynamoDB\" },\n      \"Description\": \"This Lambda function is used for getting talkers from the Talkers table.\"\n    },\n    \"DynamoDBWriteMessagesARN\": {\n      \"Value\": { \"Fn::GetAtt\": [\"WriteMessagesToDynamoDB\", \"Arn\"] },\n      \"Description\": \"The ARN for the Write Messages Lambda function\"\n    },\n    \"DynamoDBGetMessageARN\": {\n      \"Value\": { \"Fn::GetAtt\": [\"GetMessagesFromDynamoDB\", \"Arn\"] },\n      \"Description\": \"The ARN for the Get Messages Lambda function\"\n    },\n    \"ApiID\": {\n      \"Value\": { \"Fn::GetAtt\": [\"CreateAPIGateway\", \"RestApiID\"]},\n      \"Description\": \"The unique ID for your API Gateway API.\"\n    },\n    \"IamUsersPassword\": {\n      \"Value\": { \"Fn::GetAtt\": [\"CreateIAMUsers\", \"IamPassword\"]},\n      \"Description\": \"The password for your IAM users\",\n      \"Condition\": \"CreateIamResources\"\n    },\n    \"LoginURL\": {\n      \"Value\": { \"Fn::Join\": [ \"\", [\"https://\", {\"Ref\": \"AWS::AccountId\"}, \".signin.aws.amazon.com/console\"] ]},\n      \"Description\": \"The URL to login to the AWS Management console for the IAM users.\",\n      \"Condition\": \"CreateIamResources\"\n    },\n    \"IamUsersCreated\": {\n      \"Value\": { \"Fn::GetAtt\": [\"CreateIAMUsers\", \"Users\"]},\n      \"Description\": \"The IAM users created to be used for group work\",\n      \"Condition\": \"CreateIamResources\"\n    },\n    \"IamGroupCreated\": {\n      \"Value\": { \"Fn::GetAtt\": [\"CreateIAMUsers\", \"IamGroup\"]},\n      \"Description\": \"The IAM group created for the users\",\n      \"Condition\": \"CreateIamResources\"\n    },\n    \"IamUsersLambdaFunction\": {\n      \"Value\": { \"Ref\": \"IamUsersFunction\" },\n      \"Description\": \"This Lambda function is used for creating additional IAM users in th environment.\",\n      \"Condition\": \"CreateIamResources\"\n    },\n    \"IamUsersFunctionARN\": {\n      \"Value\": { \"Fn::GetAtt\": [\"IamUsersFunction\", \"Arn\"] },\n      \"Description\": \"The ARN for the Lambda function that creates additional IAM users.\",\n      \"Condition\": \"CreateIamResources\"\n    },\n    \"BucketCopiedContentsFrom\": {\n      \"Value\": { \"Fn::FindInMap\" : [ \"AllowedRegions\", { \"Ref\" : \"AWS::Region\" }, \"S3ContentsBucket\"]},\n      \"Description\": \"This is the local region AWS bucket where your files were copied from.\"\n    }\n  }\n}\n"
  },
  {
    "path": "CloudFormation/CustomResources/APIGatewayCreateScript/src/ApiGatewayCreate.js",
    "content": "console.log('Starting create API Gateway script');\nvar AWS = require('aws-sdk');\nvar async = require('async');\n\nvar apigateway;\nvar restAPIId = '';\nvar currentResourceId = '';\nvar zombieResourceId = '';\nvar talkerResourceId = '';\nvar twilioResourceId = '';\n\nvar getmessagearn;\nvar postmessagearn;\nvar iamRole;\nvar apigatewayuuid;\nvar apiName;\n\n// Variables for the callback...\nvar theEvent;\nvar theContext;\nvar theDoneCallback;\n\nmodule.exports = {\n\tcreateGateway:function(event, context, doneCallback) {\n        console.log('creating gateway, parameters passed in: ');\n        console.log(event);\n\n        theEvent = event;\n        theContext = context;\n\n        region = event.ResourceProperties.region;\n        getmessagearn = event.ResourceProperties.getmessagelambdaapiuri;\n        postmessagearn = event.ResourceProperties.postmessagelambdaapiuri;\n        iamRole = event.ResourceProperties.iamrole;\n        apigatewayuuid = event.StackId;\n        apiName = event.ResourceProperties.apiname;\n\n        AWS.config.update({region: region});\n        apigateway = new AWS.APIGateway();\n\n        theDoneCallback = doneCallback;\n\n        createGatewayImplementation();\n    }\n}\n\nfunction createGatewayImplementation() {\n\t// Asyncrhonous Steps that need to be done in order...\n\tasync.waterfall([\n        createRestAPI,\n        getRootResourse,\n        createZombieResource,\n        createMessagesResource,\n        createMethods,\n        createMethodResponses,\n        createTalkerResource,\n        createTalkerMethods,\n        createTalkerIntegrations,\n        createTwilioResource,\n        createTwilioMethods,\n        createTwilioMethodResponses,\n        createTwilioIntegrations,\n        createTwilioIntegrationResponses,\n        createIntegrations,\n        createIntegrationResponses,\n        createDeployment\n    ],\n\tdone);\n}\n\nfunction createRestAPI(callback) {\n\tconsole.log('Creating REST API');\n\n\tvar params = {\n        name: apiName,\n        description: apigatewayuuid\n    };\n    apigateway.createRestApi(params, function(err, data) {\n        if (!err) {\n            restAPIId = data.id;\n            return callback(null)\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction getRootResourse(callback){\n\tconsole.log('Getting Root Resource');\n\tvar params = {\n        restApiId: restAPIId\n\t};\n    apigateway.getResources(params, function(err, data) {\n        if(!err) {\n            currentResourceId = data.items[0].id;      // successful response\n            return callback(null);\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction createZombieResource(callback) {\n\tconsole.log('Creating Zombie Resource');\n\t  var params = {\n\t\t\t  parentId: currentResourceId, /* required */\n\t\t\t  pathPart: 'zombie', /* required */\n\t\t\t  restApiId: restAPIId /* required */\n\t\t\t};\n\t\t\tapigateway.createResource(params, function(err, data) {\n\t\t\t if(!err)\n\t\t\t  {\n\t\t\t\t currentResourceId = data.id;\n\t\t\t\t zombieResourceId = data.id;\n\t\t\t\t return callback(null);\n\t\t\t  }\n\t\t\t else{ callback(err); }\n\t\t\t});\n}\nfunction createMessagesResource(callback) {\n    console.log('Creating Message Resource');\n\tvar params = {\n        parentId: currentResourceId,\n        pathPart: 'message',\n        restApiId: restAPIId\n    };\n    apigateway.createResource(params, function(err, data) {\n        if(!err) {\n            currentResourceId = data.id;\n            return callback(null);\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction createMethods(callback) {\n    console.log('Creating GET Method');\n    //this method is going to chain the callbacks for the 3 methods to create...\n    //we don't need to save the IDs from these calls.\n\tvar params = {\n        authorizationType: 'AWS_IAM', /* required */\n        httpMethod: 'GET', /* required */\n        resourceId: currentResourceId, /* required */\n        restApiId: restAPIId, /* required */\n        apiKeyRequired: false\n    };\n\tapigateway.putMethod(params, function(err, data) {\n        if(!err) {\n            console.log('Creating POST Method');\n            params.httpMethod = 'POST';\n            apigateway.putMethod(params, function(err, data) {\n                if(!err) {\n\t\t\t\t    console.log('Creating OPTIONS Method');\n\t\t\t\t\tparams.httpMethod = 'OPTIONS';\n                    params.authorizationType = 'None';\n\t\t\t\t\tapigateway.putMethod(params, function(err, data) {\n\t\t\t\t\t\tif(!err)\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\tcallback(null);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse{ callback(err); }\n\t\t\t\t\t});\n                }\n\t\t\t\telse {\n                    callback(err);\n                }\n            });\n        }\n\t\telse {\n            callback(err);\n        }\n    });\n}\n\nfunction createMethodResponses(callback) {\n    console.log('Creating GET Method Response');\n\tvar params = {\n        httpMethod: 'GET', /* required */\n        resourceId: currentResourceId, /* required */\n        restApiId: restAPIId, /* required */\n        statusCode: '200', /* required */\n        responseModels: {\n            'application/json': 'Empty',\n        },\n        responseParameters: {\n\t\t\t'method.response.header.Access-Control-Allow-Origin': true,\n\t\t\t'method.response.header.Access-Control-Allow-Headers': true,\n\t\t\t'method.response.header.Access-Control-Allow-Methods': true\n        }\n    };\n    apigateway.putMethodResponse(params, function(err, data) {\n        if(!err) {\n            console.log('Creating POST Method Response');\n            params.httpMethod = 'POST';\n            apigateway.putMethodResponse(params, function(err, data) {\n                if(!err) {\n                    console.log('Creating OPTIONS Method Response');\n                    params.httpMethod = 'OPTIONS';\n                    /*\n                    params.responseParameters = {\n                        'method.response.header.Access-Control-Allow-Origin': true,\n                        'method.response.header.Access-Control-Allow-Headers': true,\n                        'method.response.header.Access-Control-Allow-Methods': true\n                    };\n                    */\n                    apigateway.putMethodResponse(params, function(err, data) {\n                        if(!err) {\n                            callback(null);\n                        }\n                        else {\n                            callback(err);\n                        }\n                    });\n                }\n                else {\n                    callback(err);\n                }\n            });\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction createIntegrations(callback) {\n    console.log('Creating GET Integration');\n\tvar params = {\n        httpMethod: 'GET', /* required */\n        resourceId: currentResourceId, /* required */\n        restApiId: restAPIId, /* required */\n        type: 'AWS', /* required */\n        credentials: iamRole,\n        integrationHttpMethod: 'POST',\n        uri: getmessagearn,\n\t};\n\tapigateway.putIntegration(params, function(err, data) {\n        if (!err) {\n            console.log('Creating POST Integration');\n            params.httpMethod = 'POST';\n            params.uri = postmessagearn;\n            params.requestTemplates = {\n            \"application/json\": '{\"message\": $input.json(\\'$.message\\'), \"name\": $input.json(\\'$.name\\'), \"channel\" : $input.json(\\'$.channel\\') }'\n            }\n            apigateway.putIntegration(params, function(err, data) {\n                if (!err) {\n                    console.log('Creating OPTIONS Integration');\n                    params.httpMethod = 'OPTIONS';\n                    params.uri = null;\n                    params.type = 'MOCK';\n                    params.requestTemplates = {\n                        \"application/json\": '{\"statusCode\": 200}'\n                    };\n                    apigateway.putIntegration(params, function(err, data) {\n                        if (!err) {\n                            callback(null);\n                        }\n                        else {\n                            callback(err);\n                        }\n                    });\n                }\n                else {\n                    callback(err);\n                }\n            });\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction createIntegrationResponses(callback) {\n\tconsole.log('Creating GET Integration Response');\n\tvar params = {\n        httpMethod: 'GET', /* required */\n        resourceId: currentResourceId, /* required */\n        restApiId: restAPIId, /* required */\n        statusCode: '200', /* required */\n        responseParameters: {\n\t\t  'method.response.header.Access-Control-Allow-Origin': \"'*'\"\n        },\n\n        responseTemplates : {\n            \"application/json\":'{#set($inputRoot = $input.path(\"$\")) \\\n            \"messages\": [ \\\n            #set($index = $inputRoot.Items.size()) \\\n            #foreach($i in $inputRoot.Items) \\\n                #set($index = $index - 1) \\\n                #set($elem = $inputRoot.Items.get($index)) \\\n                { \t\t\t\t\t\t\t\t\t        \\\n                    \"name\": \"$elem.name.S\", \t\t\t\\\n                    \"channel\": \"$elem.channel.S\", \t\t\\\n                    \"message\": \"$elem.message.S\", \t\t\\\n                    \"timestamp\":\"$elem.timestamp.N\"\t\t\\\n                } \t\t\t\t\t\t\t\t\t    \\\n                #if($foreach.hasNext),#end \t\t\t\t\\\n            #end \t\t\t\t\t\t\t\t\t\\\n            ]}'\n        }\n\t};\n\n\tapigateway.putIntegrationResponse(params, function(err, data) {\n        if(!err) {\n            console.log('Creating POST Integration Response');\n            params.httpMethod = 'POST';\n            apigateway.putIntegrationResponse(params, function(err, data) {\n                if(!err) {\n                    console.log('Creating OPTIONS Integration Response');\n                    params.httpMethod = 'OPTIONS';\n                    params.responseParameters = {\n                        'method.response.header.Access-Control-Allow-Origin': \"'*'\",\n                        'method.response.header.Access-Control-Allow-Headers': \"'Content-Type,X-Amz-Date,Authorization,X-Api-Key,X-Amz-Security-Token'\",\n                        'method.response.header.Access-Control-Allow-Methods': \"'GET,POST,OPTIONS'\"\n\t\t\t\t    };\n                    params.responseTemplates = {\n                        \"application/json\":'{\"statusCode\": 200}'\n                    };\n                    apigateway.putIntegrationResponse(params, function(err, data) {\n                        if(!err) {\n                            callback(null);\n                        }\n                        else {\n                            callback(err);\n                        }\n                    });\n                }\n                else {\n                    callback(err);\n                }\n            });\n        }\n\t\telse {\n            callback(err);\n        }\n    });\n}\n\nfunction createDeployment(callback) {\n    console.log('Creating Deployment');\n\tvar params = {\n        restApiId: restAPIId, /* required */\n        stageName: 'ZombieWorkshopStage', /* required */\n        cacheClusterEnabled: false,\n        description: 'ZombieWorkshopStage deployment',\n        stageDescription: 'ZombieWorkshopStage deployment'\n\t};\n\tapigateway.createDeployment(params, function(err, data) {\n        if(!err) {\n\t\t  callback(null);\n        }\n        else {\n            callback(err);\n        }\n\t});\n}\n\nfunction createTalkerResource(callback) {\n    console.log('Creating Talker Resource');\n    var params = {\n        parentId: zombieResourceId,\n        pathPart: 'talkers',\n        restApiId: restAPIId\n    };\n    apigateway.createResource(params, function(err, data) {\n        if(!err) {\n            talkerResourceId = data.id;\n            return callback(null);\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction createTalkerMethods(callback) {\n    console.log('Creating GET Method');\n\t//this method is going to chain the callbacks for the 3 methods to create...\n\t//we don't need to save the IDs from these calls.\n\tvar params = {\n        authorizationType: 'AWS_IAM', /* required */\n        httpMethod: 'GET', /* required */\n        resourceId: talkerResourceId, /* required */\n        restApiId: restAPIId, /* required */\n        apiKeyRequired: false\n    };\n\tapigateway.putMethod(params, function(err, data) {\n        if(!err) {\n            console.log('Creating POST Method');\n\t\t\tparams.httpMethod = 'POST';\n\t\t\tapigateway.putMethod(params, function(err, data) {\n                if(!err) {\n                    console.log('Creating OPTIONS Method');\n\t\t\t\t\tparams.httpMethod = 'OPTIONS';\n                    params.authorizationType = 'None';\n\t\t\t\t\tapigateway.putMethod(params, function(err, data) {\n                        if(!err) {\n                            callback(null);\n                        }\n\t\t\t\t\t\telse {\n                            callback(err);\n                        }\n\t\t\t\t\t});\n                }\n                else {\n                    callback(err);\n                }\n            });\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction done(err, status) {\n    if(err) {\n        console.log('There was an error with APIGW Create waterfall callback.');\n        theDoneCallback(err, null);\n\t}\n\telse {\n        console.log('Callback with rest ID of: ' + restAPIId);\n        theDoneCallback(null, restAPIId);\n\t}\n}\n\nfunction createTalkerIntegrations(callback) {\n    console.log('Creating GET Integration');\n\tvar params = {\n        httpMethod: 'GET', /* required */\n        resourceId: talkerResourceId, /* required */\n        restApiId: restAPIId, /* required */\n        type: 'MOCK', /* required */\n        credentials: iamRole,\n        integrationHttpMethod: 'POST',\n        uri: null,\n        requestTemplates: {\n            \"application/json\": '{\"statusCode\": 200}'\n        }\n\t};\n\tapigateway.putIntegration(params, function(err, data) {\n        if (!err) {\n            console.log('Creating POST Integration');\n            params.httpMethod = 'POST';\n            apigateway.putIntegration(params, function(err, data) {\n                if (!err) {\n                    console.log('Creating OPTIONS Integration');\n                    params.httpMethod = 'OPTIONS';\n                    params.uri = null;\n                    params.type = 'MOCK';\n                    params.requestTemplates = {\n                        \"application/json\": '{\"statusCode\": 200}'\n                    };\n                    apigateway.putIntegration(params, function(err, data) {\n                        if (!err) {\n                            callback(null);\n                        }\n                        else {\n                            callback(err);\n                        }\n                    });\n                }\n                else {\n                    callback(err);\n                }\n\t\t\t});\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction createTwilioResource(callback) {\n    console.log('Creating Twilio Resource');\n    var params = {\n        parentId: zombieResourceId,\n        pathPart: 'twilio',\n        restApiId: restAPIId\n    };\n    apigateway.createResource(params, function(err, data) {\n        if(!err) {\n            twilioResourceId = data.id;\n            return callback(null);\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction createTwilioMethods(callback) {\n\tconsole.log('Creating Twilio POST Method');\n\tvar params = {\n        authorizationType: 'None', /* required */\n        httpMethod: 'POST', /* required */\n        resourceId: twilioResourceId, /* required */\n        restApiId: restAPIId, /* required */\n        apiKeyRequired: false\n    };\n\tapigateway.putMethod(params, function(err, data) {\n        if(!err) {\n            console.log('Created Twilio POST Method');\n            return callback(null);\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction createTwilioMethodResponses(callback) {\n    console.log('Creating Twilio POST Method Response');\n\tvar params = {\n        httpMethod: 'POST', /* required */\n        resourceId: twilioResourceId, /* required */\n        restApiId: restAPIId, /* required */\n        statusCode: '200', /* required */\n        responseModels: {\n            'application/xml': 'Empty',\n        }\n    };\n    apigateway.putMethodResponse(params, function(err, data) {\n        if(!err) {\n            console.log('Created Twilio POST Method Response');\n            return callback(err);\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction createTwilioIntegrations(callback) {\n\tconsole.log('Creating Twilio POST Integration');\n    var params = {\n        httpMethod: 'POST', /* required */\n        resourceId: twilioResourceId, /* required */\n        restApiId: restAPIId, /* required */\n        type: 'MOCK', /* required */\n        credentials: iamRole,\n        integrationHttpMethod: 'POST',\n        uri: null,\n        requestTemplates: {\n            \"application/x-www-form-urlencoded\": '{\"postBody\" : \"$input.path(\\'$\\')\"}'\n        }\n    };\n    apigateway.putIntegration(params, function(err, data) {\n        if (!err) {\n            console.log('Created Twilio POST Integration');\n            return callback(null);\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n\nfunction createTwilioIntegrationResponses(callback) {\n    console.log('Creating Twilio POST Integration Response');\n\tvar params = {\n        httpMethod: 'POST', /* required */\n        resourceId: twilioResourceId, /* required */\n        restApiId: restAPIId, /* required */\n        statusCode: '200', /* required */\n        responseTemplates : {\n            \"application/xml\": '#set($inputRoot = $input.path(\\'$\\'))<?xml version=\"1.0\" encoding=\"UTF-8\"?><Response><Message><Body>$inputRoot</Body></Message></Response>'\n        }\n\t};\n\n\tapigateway.putIntegrationResponse(params, function(err, data) {\n        if(!err) {\n            console.log('Created Twilio POST Integration Response');\n            return callback(null);\n        }\n        else {\n            callback(err);\n        }\n    });\n}\n"
  },
  {
    "path": "CloudFormation/CustomResources/APIGatewayCreateScript/src/ApiGatewayDelete.js",
    "content": "var AWS = require('aws-sdk');\n\nvar apigateway;\nvar apigatewayuuid;\n\nmodule.exports = {\n\t\tdeleteGateway:function(event, context, callback)\n\t{\n\t\tconsole.log('deleting gateway, parameters passed in: ');\n\t\tconsole.log(event);\n\t\t\n\t\tregion = event.ResourceProperties.region;\n\t\tapigatewayuuid = event.StackId;\n\t\t\n\t\tAWS.config.update({region: region});\n\t\tapigateway = new AWS.APIGateway();\n\t\t\n\t\tdeleteGatewayImplementation(callback);\n\t}\n}\n\nfunction deleteGatewayImplementation(callback)\n{\n\tvar params = {};\n\tapigateway.getRestApis(params, function(err, data) {\n\t  if (!err)\n\t  {\n\t\t  console.log('finding api gateway in list');\n\t\t  for (var i = 0; i < data.items.length; i++) \n\t\t  {\n\t\t\t  if(data.items[i].description == apigatewayuuid)\n\t\t\t  {\n\t\t\t\t  \tconsole.log('found gateway, deleting...');\n\t\t\t\t  \tvar params = {\n\t\t\t\t\t  restApiId: data.items[i].id\n\t\t\t\t\t};\n\t\t\t\t\tapigateway.deleteRestApi(params, function(err, data) {\n\t\t\t\t\t  if (!err)\n\t\t\t\t\t  {\n\t\t\t\t\t\t  console.log('successfully deleted api gateway');\n\t\t\t\t\t\t  callback(null);\n\t\t\t\t\t\t  \n\t\t\t\t\t  }\n\t\t\t\t\t  else\n\t\t\t\t\t  {\n\t\t\t\t\t\t  callback(err);\n\t\t\t\t\t  }\n\t\t\t\t\t}); \n\t\t\t  }\n\t\t  }\n\t  }\n\t  else\n\t  {\n\t\t  console.log(err, err.stack); \n\t\t  callback(err);\n\t  }\n\t});\n}                \n"
  },
  {
    "path": "CloudFormation/CustomResources/APIGatewayCreateScript/src/LambdaHandler.js",
    "content": "/**\n * New node file\n */\n\nvar AWS = require('aws-sdk');\nvar apigatewaycreate = require('./ApiGatewayCreate');\nvar apigatewaydelete = require('./ApiGatewayDelete');\nvar cloudformationsender = require('./cloudformationsender');\nvar zombieconfigupdater = require('./ZombieWebsiteConfigUpdate');\n\nvar theRegion;\nvar theS3Bucket;\nvar theS3Key\nvar theEvent;\nvar theContext;\nvar RestApiID;\n\nexports.handleGatewayEvent = function(event, context)\n{\n\n\ttheEvent = event;\n\ttheContext = context;\n\t\n\tif(event.RequestType == 'Create')\n\t{\n\t\ttheRegion = event.ResourceProperties.region;\n\t\ttheS3Bucket = event.ResourceProperties.s3bucket;\n\t\ttheS3Key = event.ResourceProperties.s3key;\n\t\t\n\t\tAWS.config.update({region: theRegion});\n\t\t\n\t\tapigatewaycreate.createGateway(event, context, createApiGatewayCallback);\n\t}\n\telse if(event.RequestType == 'Delete')\n\t{\n\t\tapigatewaydelete.deleteGateway(event, context, finishedUpdatingCallback);\n\t}\n\telse\n\t{\n\t\tconsole.log(event);\n\t\tconsole.log('non-create requst type, sending suceed');\n\t\tcloudformationsender.sendResponse(event, context, \"SUCCESS\", {});\n\t}\n}\n\nfunction createApiGatewayCallback(err, restAPIId)\n{\n\tif(err)\n\t{\n\t\tconsole.log(err, err.stack);\n\t\tcloudformationsender.sendResponse(theEvent, \n\t            theContext, \"FAILED\", {});\n\t}\n\telse\n\t{\n\t\t//var url = \"https://\" + restAPIId + \".execute-api.\" + theRegion + \".amazonaws.com/ZombieWorkshopStage/zombie/message\";\n\t\tvar url = \"https://\" + restAPIId + \".execute-api.\" + theRegion + \".amazonaws.com/ZombieWorkshopStage\";\n\t\tRestApiID = restAPIId; // set global var equal to the rest ID.\n\t\tconsole.log(\"calling s3 helper to create constants with url: \" + url);\n\t\t\n\t\tzombieconfigupdater.updateConfig(theRegion,\n\t\t\t\t\t\t\t\t\t\t theS3Key,\n\t\t\t\t\t\t\t\t\t\t theS3Bucket,\n\t\t\t\t\t\t\t\t\t\t url,\n\t\t\t\t\t\t\t\t\t\t finishedUpdatingCallback);\n\t}\n}\n\n/**\n * callback that looks if it's an error and updates cloudformation appropriately...\n * @param err\n */\nfunction finishedUpdatingCallback(err)\n{\n\n\tif(err)\n\t{\n\t\tconsole.log('Processing failed during finishedUpdatingCallback.');\n\t\tcloudformationsender.sendResponse(theEvent, \n\t            theContext, \"FAILED\", {});\n\t}\n\telse\n\t{\t\n\t\tconsole.log('Calling cloudformationsender with SUCCESS param of of RestApiID: ' + RestApiID);\n\t\tcloudformationsender.sendResponse(theEvent, \n\t            theContext, \"SUCCESS\", {\n\t            \t\"RestApiID\": RestApiID\n\t            });\n\t}\n}"
  },
  {
    "path": "CloudFormation/CustomResources/APIGatewayCreateScript/src/ZombieWebsiteConfigUpdate.js",
    "content": "/**\n * This module writes the file out in the format needed for the website.\n * the S3 bucket/key and the url is passed in, and it writes the javascript file out.\n */\nvar AWS = require('aws-sdk');\nmodule.exports = {\n\t\tupdateConfig:function(region, s3key, s3bucketName, url, callback)\n\t{\n\t\tconsole.log('updating Zombie S3 web page located at: ' + s3key + ' and ' + s3bucketName);\n\t\t\n\t\tAWS.config.update({region: region});\n\t\t\n\t\tvar s3bucket = new AWS.S3({params: {Bucket: s3bucketName}});\n\t\ts3bucket.createBucket(function() {\n\t\t  var params = {Key: s3key, Body: 'var MESSAGES_ENDPOINT = \"' + url + '\";'};\n\t\t  s3bucket.upload(params, function(err, data) {\n\t\t    if (err) {\n\t\t      callback(err);\n\t\t    } else {\n\t\t      callback(null);\n\t\t    }\n\t\t  });\n\t\t});\n\t}\n}\n\n"
  },
  {
    "path": "CloudFormation/CustomResources/APIGatewayCreateScript/src/cloudformationsender.js",
    "content": "/**\n * New node file\n */\n\nmodule.exports = {\n\t\tsendResponse: function(event, context, responseStatus, responseData) {\n \n\tvar responseBody = JSON.stringify({\n\t    Status: responseStatus,\n\t    Reason: \"See the details in CloudWatch Log Stream: \" + context.logStreamName,\n\t        PhysicalResourceId: context.logStreamName,\n\t        StackId: event.StackId,\n\t        RequestId: event.RequestId,\n\t        LogicalResourceId: event.LogicalResourceId,\n\t        Data: responseData\n\t    });\n\t \n\t    console.log(\"RESPONSE BODY:\\n\", responseBody);\n\t \n\t    var https = require(\"https\");\n\tvar url = require(\"url\");\n\t \n\t    var parsedUrl = url.parse(event.ResponseURL);\n\t    var options = {\n\t        hostname: parsedUrl.hostname,\n\t        port: 443,\n\t        path: parsedUrl.path,\n\t        method: \"PUT\",\n\t    headers: {\n\t        \"content-type\": \"\",\n\t        \"content-length\": responseBody.length\n\t        }\n\t    };\n\t \n\t    console.log(\"SENDING RESPONSE...\\n\");\n\t \n\t    var request = https.request(options, function(response) {\n\t        console.log(\"STATUS: \" + response.statusCode);\n\t    console.log(\"HEADERS: \" + JSON.stringify(response.headers));\n\t    // Tell AWS Lambda that the function execution is done  \n\t        context.done();\n\t    });\n\t \n\t    request.on(\"error\", function(error) {\n\t    console.log(\"sendResponse Error:\" + error);\n\t    // Tell AWS Lambda that the function execution is done  \n\t        context.done();\n\t    });\n\t  \n\t    // write data to request body\n\t    request.write(responseBody);\n\t    request.end();\n\t}\n}"
  },
  {
    "path": "CloudFormation/CustomResources/IamUsers/IamLambdaHandler.js",
    "content": "var aws = require('aws-sdk');\nvar iamCreate = require('./create.js');\nvar iamDelete = require('./delete.js');\nvar cloudformationsender = require('./cloudformationsender.js');\n\nvar region;\nvar theEvent;\nvar theContext;\nvar groupName;\nvar stackName;\n\nexports.handleIAM = function(event, context) {\n\ttheEvent = event;\n\ttheContext = context;\n    \n    region = event.ResourceProperties.region;\n    aws.config.update({region: region});\n\t\n    if(event.RequestType == 'Create') {\n       stackName = event.ResourceProperties.StackName;\n       groupName = stackName + '-IamGroup';\n       \n       iamCreate.createIAM(event, context, finishedCreatingCallback);\n\t}\n    else if(event.RequestType == 'Delete') {\n        iamDelete.deleteIAM(event, context, finishedDeletingCallback);\n\t}\n\telse {\n        console.log(event);\n        console.log('Event is not a create or delete, send success');\n        cloudformationsender.sendResponse(event, context, \"SUCCESS\", {});\n\t}\n}\n\n/**\n * Callback function for the IAM creation which should have 3 params coming in.\n */\nfunction finishedCreatingCallback(err, usersForCloudFormation, IAMuserPassword, groupName) {\n    if(err) {\n        cloudformationsender.sendResponse(theEvent, theContext, \"FAILED\", {});\n\t}\n\telse {\t\n\t   cloudformationsender.sendResponse(theEvent, theContext, \"SUCCESS\", {\n            \"IamPassword\": IAMuserPassword,\n            \"Users\": usersForCloudFormation,\n            \"IamGroup\": groupName \n        });\n    }\n}\n\n/**\n * Callback function for the IAM deletion, no params.\n */\nfunction finishedDeletingCallback(err) {\n    if(err) {\n        cloudformationsender.sendResponse(theEvent, theContext, \"FAILED\", {});\n\t}\n\telse {\n        cloudformationsender.sendResponse(theEvent, theContext, \"SUCCESS\", {});\n\t}\n}"
  },
  {
    "path": "CloudFormation/CustomResources/IamUsers/cloudformationsender.js",
    "content": "/**\n * New node file\n */\n\nmodule.exports = {\n    sendResponse: function(event, context, responseStatus, responseData) {\n \n        var responseBody = JSON.stringify({\n            Status: responseStatus,\n            Reason: \"See the details in CloudWatch Log Stream: \" + context.logStreamName,\n            PhysicalResourceId: context.logStreamName,\n            StackId: event.StackId,\n            RequestId: event.RequestId,\n            LogicalResourceId: event.LogicalResourceId,\n            Data: responseData\n        });\n\t \n\t    console.log(\"RESPONSE BODY:\\n\", responseBody);\n\t \n\t    var https = require(\"https\");\n        var url = require(\"url\");\n\t \n\t    var parsedUrl = url.parse(event.ResponseURL);\n\t    var options = {\n\t       hostname: parsedUrl.hostname,\n\t       port: 443,\n\t       path: parsedUrl.path,\n\t       method: \"PUT\",\n           headers: {\n               \"content-type\": \"\",\n\t           \"content-length\": responseBody.length\n           }\n\t    };\n\t \n\t    console.log(\"SENDING RESPONSE...\\n\");\n\t \n\t    var request = https.request(options, function(response) {\n            console.log(\"STATUS: \" + response.statusCode);\n            console.log(\"HEADERS: \" + JSON.stringify(response.headers));\n            // Tell AWS Lambda that the function execution is done  \n\t        context.done();\n\t    });\n\t \n\t    request.on(\"error\", function(error) {\n\t       console.log(\"sendResponse Error:\" + error);\n\t       // Tell AWS Lambda that the function execution is done  \n            context.done();\n\t    });\n\t  \n\t    // write data to request body\n\t    request.write(responseBody);\n\t    request.end();\n\t}\n}"
  },
  {
    "path": "CloudFormation/CustomResources/IamUsers/create.js",
    "content": "var aws = require('aws-sdk');\nvar async = require('async');\nvar iam;\n\n// Variables for the callback...\nvar theEvent;\nvar theContext;\nvar theDoneCallback;\n\nvar stackName;\nvar groupName;\nvar IAMuserPassword = \"0Sa$3mJCC8xY\";\nvar numIamUsers;                        // num users requested from cfn\nvar requestedUserCountArray = [];       // numIamUsers split and counted\nvar usersCreatedArray = [];             // Hold our created usernames\n\nmodule.exports = {\n    createIAM:function(event, context, doneCallback) {\n        console.log(event);\n        \n        theEvent = event;\n        theContext = context;\n        \n        stackName = event.ResourceProperties.StackName;\n        groupName = stackName + '-IamGroup';\n        numIamUsers = event.ResourceProperties.IamUsers;\n        \n        iam = new aws.IAM();\n        \n        theDoneCallback = doneCallback;\n        \n        pushUsers(numIamUsers); \n        createUsersImplementation();\n    }\n}\n\nfunction createUsersImplementation() {\n    async.series([\n        createIamGroup,\n        createUsers\n    ], done);    \n}\n\nfunction createIamGroup (callback) {\n    console.log('Creating IAM Group');\n    var params = {\n        GroupName: groupName\n    };\n    iam.createGroup(params, function(err, data) {\n        if (err) {\n            console.log('Error creating group')\n            return callback(err);\n        } else {\n            console.log('Created IAM Group ' + params.GroupName);\n            callback(null, params.GroupName);\n        }\n    }); \n}\n\nfunction createUsers (callback) {\n    async.forEachLimit(requestedUserCountArray, 1, function(item, callback) {\n        async.waterfall([\n            async.apply(userCreate, item), \n            userAddToGroup,\n            userCreateLoginProfile\n        ], function (err, data) {\n                if (err) {\n                    return callback(err);\n                } else{\n                    console.log('Done creating user');\n                    callback(null);   \n                }\n        });   \n    }, function(err){\n        if (err) {\n            return callback(err);\n        } else {\n            callback(null);\n        }\n    });   \n}\n\nfunction userCreate(user, callback){\n    console.log('Creating user ' + user);\n    var params = {\n        UserName: stackName + \"-user-\" + user\n    };\n    iam.createUser(params, function(err, data){\n        if (err) {\n            console.log('Error creating user')\n            return callback(err);\n        } else {\n            console.log('Created user ' + params.UserName);\n            callback(null, params.UserName);\n        }\n    }); \n}\n\nfunction userAddToGroup(user, callback){        \n    var params = {\n        GroupName: groupName,\n        UserName: user\n    };\n    iam.addUserToGroup(params, function(err, data) {\n        if (err) {\n            console.log('Error adding user to group')\n            return callback(err);\n        } else {     \n            console.log('Added user ' + params.UserName + ' to IAM group.');\n            callback(null, params.UserName);\n        }\n    });  \n}\n\nfunction userCreateLoginProfile(user, callback){\n    console.log('Creating login profile for ' + user);\n    var params = {\n        Password: IAMuserPassword,\n        UserName: user,\n        PasswordResetRequired: false\n    };\n    iam.createLoginProfile(params, function(err, data) {\n        if (err) {\n            console.log('Error creating login profile for user');\n            return callback(err);\n        } else {\n            console.log('Created login profile for ' + params.UserName);\n            usersCreatedArray.push(params.UserName);\n            callback(null);\n        }\n    });   \n}\n\n/**\n * Create incrementing user numbers. \n * Take numIamUsers from CFN and turn it into an array of numbers counting from 1.\n */\nfunction pushUsers(numIamUsers) {\n    for (var k = 1; k<=numIamUsers; k++) {\n        requestedUserCountArray.push(k);\n    }\n}\n\nfunction done(err, status) {\n    if(err) {\n        return theDoneCallback(err, null);\n    } else {\n        theDoneCallback(null, usersCreatedArray.toString(), IAMuserPassword, groupName); // pass back params for CFN output\n\t}\n}"
  },
  {
    "path": "CloudFormation/CustomResources/IamUsers/delete.js",
    "content": "var aws = require('aws-sdk');\nvar async = require('async');\nvar iam;\n\nvar groupObject;\nvar groupName;\nvar stackName; \n\n// Variables for the callback...\nvar theEvent;\nvar theContext;\nvar theDoneCallback;\n\n\nmodule.exports = {\n    deleteIAM:function(event, context, doneCallback) {\n        console.log('Deleting users');\n        theEvent = event;\n        theContext = context;\n\n        stackName = event.ResourceProperties.StackName;\n        groupName = stackName + '-IamGroup';\n        \n        iam = new aws.IAM();\n        theDoneCallback = doneCallback;\n        \n        deleteUsersImplementation(groupName);       \n    }    \n}\n\nfunction deleteUsersImplementation(groupName) {\n    async.waterfall([\n        async.apply(getGroupUsers, groupName),\n        deleteUsers,\n        deleteGroup\n    ], done);    \n}\n\nfunction getGroupUsers(groupName, callback) {\n    var params = {\n        GroupName: groupName\n    };\n    var usersToDelete = [];\n    iam.getGroup(params, function(err, data) {\n        if (err) {\n            console.log('Error getting group');\n            return callback(err);\n        } else {\n            groupObject = data.Users;\n            groupName = data.Group.GroupName;\n            \n            for (var obj in groupObject) {\n                var userName = groupObject[obj]['UserName'];\n                console.log('UserName is ' + userName);\n                usersToDelete.push(userName);  \n            }\n            callback(null, usersToDelete, params.GroupName);\n        }\n    });    \n}\n\nfunction deleteUsers (usersToDelete, groupName, callback) {\n    async.forEachLimit(usersToDelete, 1, function(item, callback) {\n        async.waterfall([\n            async.apply(removeUserFromGroup, item, groupName),\n            removeUserLoginProfile,\n            deleteIamUser,  \n        ], function (err, data) {\n            if (err) {\n                console.log('Error occurred deleting user');\n                return callback(err);\n            } else {\n                callback(null);\n            }\n        });\n    }, function(err, data){\n        if (err) {\n            console.log('Error in deleteusers function.');\n            return callback(err);\n        } else {\n            callback(null, groupName);\n        }\n    }); \n}\n\nfunction removeUserFromGroup(user, groupName, callback) {\n    console.log('Removing user ' + user + ' from group');\n    var params = {\n        GroupName: groupName,\n        UserName: user\n    };\n    iam.removeUserFromGroup(params, function(err, data) {\n        if (err) {\n            console.log('Error removing user from group');\n            return callback(err);\n        } else {\n            console.log('Removed IAM user ' + params.UserName);\n            callback(null, params.UserName);\n        }\n    }); \n}\n\nfunction removeUserLoginProfile(user, callback){\n    console.log('Removing login profile for ' + user);\n    var params = {\n        UserName: user\n    };\n    iam.deleteLoginProfile(params, function(err, data) {\n        if (err) {\n            console.log('Error deleting login profile for user');\n            return callback(err);\n        } else {\n            console.log('Removed login profile for user: ' + params.UserName);\n            callback(null, params.UserName);\n        }                           \n    });    \n}\n\nfunction deleteIamUser(user, callback){        \n    console.log('Deleting user ' + user);\n    var params = {\n        UserName: user\n    };\n    iam.deleteUser(params, function(err, data) {\n        if (err) {\n            console.log('Error deleting user');\n            return callback(err);\n        } else {\n            console.log('Deleted IAM user ' + params.UserName);\n            callback(null);\n        }\n    });  \n}\n\nfunction deleteGroup(groupName, callback) {\n    var params = {\n        GroupName: groupName\n    };\n    iam.deleteGroup(params, function(err, data) {\n        if (err) {\n            console.log('Error deleting IAM group'); \n            return callback(err);\n        } else {\n            console.log('IAM Group deleted: ' + params.GroupName); \n            callback(null);  \n        }\n    });\n}\n\nfunction done(err, status) {\n    if(err) {\n        return theDoneCallback(err);\n    } else {\n        theDoneCallback(null);\n\t}\n}"
  },
  {
    "path": "CloudFormation/CustomResources/S3GetFilesFunction/S3GetFilesFunction.js",
    "content": "var AWS = require('aws-sdk');\nvar async = require('async');\n\nexports.handler = function(event, context) {\n  console.log('REQUEST RECEIVED:\\n', JSON.stringify(event));\n\n  // Set region to the destination region where the user's bucket is hosted.\n  //aws.config.update({region: event.ResourceProperties.S3Region})\n  var responseData = {};\n  var responseStatus = \"FAILED\";  // Start out with response of FAILED until we confirm SUCCESS explicitly.\n\n  var srcS3Bucket = event.ResourceProperties.BucketName;  // S3 bucket where AWS has hosted the lab content\n  var dstS3Bucket = event.ResourceProperties.WebsiteBucketCreatedEarlier;\n  var s3Region = event.ResourceProperties.S3Region;\n  var s3 = new AWS.S3({params: {Bucket: srcS3Bucket}, region: s3Region});\n\n  // CloudFormation cannot delete S3 bucket if there are objects in it.\n  // If DELETE request type is sent, delete the objects out of the user's bucket, then log SUCCESS so Cloudformation can proceed.\n  if (event.RequestType == \"Delete\") {\n    var params = {\n      Bucket: dstS3Bucket\n    }\n\n    s3.listObjects(params, function(err, data) {\n      if (err) {\n        responseData = {Error: 'Failed to get objects from bucket for deletion.'};\n        console.log(responseData.Error + ':\\\\n', err);\n      }\n\n      params = {Bucket: dstS3Bucket};\n      params.Delete = {};\n      params.Delete.Objects = [];\n\n      data.Contents.forEach(function(content) {\n        params.Delete.Objects.push({Key: content.Key});\n      });\n\n      s3.deleteObjects(params, function(err, data) {\n        if (err) {\n          responseData = {Error: 'Failed to delete an object from bucket.'};\n          console.log(responseData.Error + ':\\\\n', err);\n        }\n        else {\n          console.log(data);\n          responseStatus = \"SUCCESS\";\n        }\n        sendResponse(event, context, responseStatus, responseData);\n      });\n    });\n  }\n\n  // if request type is CREATE or UPDATE, list objects from the zombie workshop bucket and copy them to the user's new bucket.\n  else {\n    function initiateCopyObjects() {  // List all objects, then invoke copy function with keys\n      async.waterfall([\n        s3ListObjects,\n        s3CopyObjects\n      ], function(err, result) {\n        if (err) {\n          console.log('Error: ' + err);\n          responseStatus = \"FAILED\";\n          console.log('responseStatus is: ' + responseStatus + ' and event is: ' + event + ' and context is: ' + context);\n          sendResponse(event, context, responseStatus, responseData);\n        } \n        else {\n          console.log('Done processing');\n          responseStatus = \"SUCCESS\";\n          console.log('responseStatus is: ' + responseStatus + ' and event is: ' + event + ' and context is: ' + context);\n          sendResponse(event, context, responseStatus, responseData);\n        }\n      });  \n    }\n\n    \n    function s3ListObjects(callback) {\n      console.log('Starting s3 list objects function');\n      var keys = [];\n\n      var params = {\n        Bucket: srcS3Bucket\n      };\n\n      s3.listObjects(params, function(err, data) {\n        if (err) {\n          console.log('Error listing S3 objects');\n          return callback('Failed to list objects in bucket with error ' + err);\n        }\n        else {\n          console.log('Data.contents is: ' + data.Contents.Key);\n          keys.push(data.Contents);\n          callback(null, data.Contents);\n        }\n      });\n    }\n\n    function s3CopyObjects(keys, callback) {\n      async.each(keys, function(file, callback) {\n        var params = {\n          Bucket: dstS3Bucket,\n          CopySource: srcS3Bucket + '/' + file.Key,\n          Key: file.Key\n        };\n        s3.copyObject(params, function(copyErr, copyData){\n          if (copyErr) {\n            console.log('Failed to copy object: ' + copyErr);\n            return callback(copyErr);\n          }\n          else {\n            console.log('Copied: ', params.Key);\n            callback(null);\n          }\n        });\n      }, function(err) {\n        if (err) {\n          console.log('There was an error');\n          return callback(err);\n        }\n        else {\n          console.log('Finished copying');\n          callback(null, 'Finished copying all of the files');\n        }\n      });\n    }\n    initiateCopyObjects(); \n  } // End CREATE/UPDATE section\n}\n\nfunction sendResponse(event, context, responseStatus, responseData) {\n\n  var responseBody = JSON.stringify({\n      Status: responseStatus,\n      Reason: 'See the details in CloudWatch Log Stream: ' + context.logStreamName,\n      PhysicalResourceId: context.logStreamName,\n      StackId: event.StackId,\n      RequestId: event.RequestId,\n      LogicalResourceId: event.LogicalResourceId,\n      Data: responseData\n  });\n\n  console.log('RESPONSE BODY:\\n', responseBody);\n\n  var https = require('https');\n  var url = require('url');\n\n  var parsedUrl = url.parse(event.ResponseURL);\n  var options = {\n      hostname: parsedUrl.hostname,\n      port: 443,\n      path: parsedUrl.path,\n      method: 'PUT',\n      headers: {\n        \"content-type\": \"\",\n        \"content-length\": responseBody.length\n      }\n  };\n\n  console.log('SENDING RESPONSE...\\n');\n\n  var request = https.request(options, function(response) {\n      console.log('STATUS: ' + response.statusCode);\n      console.log('HEADERS: ' + JSON.stringify(response.headers));\n      context.done();\n  });\n\n  request.on('error', function(error) {\n    console.log('sendResponse Error:' + error);\n    context.done();\n  });\n\n  request.write(responseBody);\n  request.end();\n}\n"
  },
  {
    "path": "CloudFormation/CustomResources/cognito/cognito.js",
    "content": "var AWS = require('aws-sdk');\nvar async = require('async');\n\nexports.handler = function(event, context, callback) {\n  console.log('REQUEST RECEIVED:\\n', JSON.stringify(event));\n  var responseData = {};\n  var responseStatus = \"FAILED\";  // Start out with response of FAILED until we confirm SUCCESS explicitly.\n\n  var bucket = event.ResourceProperties.bucket; // the bucket created for the app by CloudFormation\n  var constantsFileKey = event.ResourceProperties.constantsFile;\n  var stackName = event.ResourceProperties.StackName.replace(/-/g, \"\"); // remove hyphen from name so we can use it for Cognito which doesn't allow slashes.\n  var cognitoRegion = event.ResourceProperties.CognitoRegion; // the region where Cognito exists. Cognito not in all regions so this is passed in from CFN.\n  var stackRegion = event.ResourceProperties.region; // the region where the stack was launched. Might be diff than Cognito Region.\n  var cognitoidentity = new AWS.CognitoIdentity({region: event.ResourceProperties.CognitoRegion});\n  var s3bucket = new AWS.S3();\n  var cognitoRoleARN = event.ResourceProperties.cognitoRoleARN;\n  var clientId = '';\n  var userPoolId = '';\n  var identityPoolid = '';\n\n  // If DELETE request type is sent, return success to cloudformation. User will manually tear down Cognito resources\n  if (event.RequestType == \"Delete\") {\n    responseStatus = \"SUCCESS\";\n    console.log('responseStatus is: ' + responseStatus + ' and event is: ' + event + ' and context is: ' + context);\n    sendResponse(event, context, responseStatus, responseData, callback);\n  }\n\n  // if request type is CREATE or UPDATE, create the resources\n  else {\n    function initiateCognitoBuild() {\n      async.waterfall([\n        createIdentityPool,\n        setRoles,\n        getConstantsFile,\n        replaceConstantsFile\n      ], function(err, result) {\n        if (err) {\n          console.log('Error: ' + err);\n          responseStatus = \"FAILED\";\n          console.log('responseStatus is: ' + responseStatus + ' and event is: ' + event + ' and context is: ' + context);\n          sendResponse(event, context, responseStatus, responseData, callback);\n        }\n        else {\n          console.log('Done processing');\n          responseStatus = \"SUCCESS\";\n          console.log('responseStatus is: ' + responseStatus + ' and event is: ' + event + ' and context is: ' + context);\n          sendResponse(event, context, responseStatus, responseData, callback);\n        }\n      });\n    }\n\n    function createIdentityPool(callback) {\n      var params = {\n        AllowUnauthenticatedIdentities: true,\n        IdentityPoolName: stackName + '_identitypool',\n      };\n      cognitoidentity.createIdentityPool(params, function(err, data) {\n        if (err) {\n          console.log('Error creating identity pool. Error is: ' + err);\n          return callback(err);\n        }\n        else {\n          console.log('Created identity pool. Pool Id is: ' + data.IdentityPoolId);\n          identityPoolid = data.IdentityPoolId;\n          callback(null, data.IdentityPoolId);\n        }\n      });\n    }\n\n    function setRoles(identityPoolid, callback){\n      var params = {\n        IdentityPoolId: identityPoolid,\n        Roles: {\n          authenticated: cognitoRoleARN,\n          unauthenticated: cognitoRoleARN\n        }\n      };\n      cognitoidentity.setIdentityPoolRoles(params, function(err, data) {\n        if (err) {\n          console.log('Unable to add roles to identity pool. Error: ' + err);\n          return callback(err);\n        }\n        else {\n          console.log('Added roles to identity pool.');\n          callback(null);\n        }\n      });\n    }\n\n    function getConstantsFile(callback) {\n\n      var params = {\n        Bucket: bucket,\n        Key: constantsFileKey\n      };\n      s3bucket.getObject(params, function(err, data) {\n        if (err) {\n          console.log('Unable to retrieve constants file from S3 bucket.');\n          return callback(err);\n        }\n        else {\n          console.log('Retrieved constants.js file from S3 bucket.');\n          console.log('url from file is: ' + data.Body);\n          apigwURL = data.Body;\n          callback(null, data.Body);\n        }\n      });\n    }\n\n    function replaceConstantsFile(url, callback) {\n\n      var params = {\n        Bucket: bucket,\n        Key: constantsFileKey,\n        Body: url + '\\nvar COGNITO_REGION = \"' + cognitoRegion + '\";\\nvar AWS_REGION = \"' + stackRegion + '\";\\nvar IDENTITY_POOL_ID = \"' + identityPoolid + '\";\\nvar USER_POOL_ID = \"' + userPoolId + '\";\\nvar CLIENT_ID = \"' + clientId + '\";'\n      };\n      s3bucket.upload(params, function(err, data) {\n        if (err) {\n          console.log('Unable to put constants file into S3 bucket.');\n          return callback(err);\n        }\n        else {\n          console.log('Uploaded constants.js file to S3 bucket.');\n          console.log('Constants file contents: ' + data.Body);\n          callback(null);\n        }\n      });\n    }\n    initiateCognitoBuild();\n  } // End CREATE/UPDATE section\n\n}\n\nfunction sendResponse(event, context, responseStatus, responseData, callback) {\n\n  var responseBody = JSON.stringify({\n      Status: responseStatus,\n      Reason: 'See the details in CloudWatch Log Stream: ' + context.logStreamName,\n      PhysicalResourceId: context.logStreamName,\n      StackId: event.StackId,\n      RequestId: event.RequestId,\n      LogicalResourceId: event.LogicalResourceId,\n      Data: responseData\n  });\n\n  console.log('RESPONSE BODY:\\n', responseBody);\n\n  var https = require('https');\n  var url = require('url');\n\n  var parsedUrl = url.parse(event.ResponseURL);\n  var options = {\n      hostname: parsedUrl.hostname,\n      port: 443,\n      path: parsedUrl.path,\n      method: 'PUT',\n      headers: {\n        \"content-type\": \"\",\n        \"content-length\": responseBody.length\n      }\n  };\n\n  console.log('SENDING RESPONSE...\\n');\n\n  var request = https.request(options, function(response) {\n      console.log('STATUS: ' + response.statusCode);\n      console.log('HEADERS: ' + JSON.stringify(response.headers));\n      callback(null);\n  });\n\n  request.on('error', function(error) {\n    console.log('sendResponse Error:' + error);\n    callback(null);\n  });\n\n  request.write(responseBody);\n  request.end();\n}\n"
  },
  {
    "path": "CloudFormation/CustomResources/cognitoTriggerBuild/index.js",
    "content": "var AWS = require('aws-sdk');\n\n// This custom resource Lambda function builds the Cognito Lambda Trigger in the AWS region where CloudFormation created the Cognito Identity Pool for the workshop.\n// Cognito is not available in all regions. If the stack is launched in an unsupported Cognito region, CloudFormation defaults back to us-east-1 to launch Cognito resources.\n// CloudFormation cannot natively launch Lambda functions in remote regions so we are doing this inside a custom resource.\n// If the user launched the stack in a region that supports Cognito then this function will launch Cognito will launch in that region, otherwise it defaults to us-east-1.\nexports.handler = function(event, context, callback) {\n  console.log('REQUEST RECEIVED:\\n', JSON.stringify(event));\n  var responseData = {};\n  var responseStatus = \"FAILED\";  // Start out with response of FAILED until we confirm SUCCESS explicitly.\n\n  var lambdaBucket = event.ResourceProperties.LambdaFunctionBucket; // the workshop bucket where the Cogntio Trigger function zip is located.\n  var stackName = event.ResourceProperties.StackName;\n  var region = event.ResourceProperties.region; // Region where the stack was launched. \n  var lambda = new AWS.Lambda({region: event.ResourceProperties.CognitoRegion}); // Set Lambda region to the local location where Cognito was built. CFN passes this as a parameter.\n  var iamRole = event.ResourceProperties.IamRole; // the iam role to associate with the function we're creating.\n\n  // If DELETE request type is sent, return success to cloudformation. User will manually tear down Cognito resources\n  if (event.RequestType == \"Delete\") {\n    responseStatus = \"SUCCESS\";\n    console.log('responseStatus is: ' + responseStatus + ' and event is: ' + event + ' and context is: ' + context);\n    sendResponse(event, context, responseStatus, responseData, callback);\n  }\n\n  // if request type is CREATE or UPDATE, create the resources\n  else {\n\n    var params = {\n      Code: {\n        S3Bucket: lambdaBucket,\n        S3Key: 'cognitoLambdaTrigger.zip'\n      },\n      FunctionName: stackName + '-CognitoLambdaTrigger' + '-' + region,\n      Handler: 'index.handler',\n      Role: iamRole,\n      Runtime: 'nodejs4.3',\n      Timeout: '120'\n    };\n    lambda.createFunction(params, function(err, data) {\n      if (err) {\n        console.log('Error creating cognitoLambdaTrigger function. Error is: ' + err);\n        responseStatus = \"FAILED\";\n        console.log('responseStatus is: ' + responseStatus + ' and event is: ' + event + ' and context is: ' + context);\n        sendResponse(event, context, responseStatus, responseData, callback);\n      }\n      else {\n        console.log('Created cognitoLambdaTrigger. Function ARN is: ' + data.FunctionArn);\n        responseData = {FunctionARN: data.functionArn};\n        responseStatus = \"SUCCESS\";\n        console.log('responseStatus is: ' + responseStatus + ' and event is: ' + event + ' and context is: ' + context);\n        sendResponse(event, context, responseStatus, responseData, callback);\n      }\n    });\n  } // End CREATE/UPDATE section\n}\n\nfunction sendResponse(event, context, responseStatus, responseData, callback) {\n\n  var responseBody = JSON.stringify({\n      Status: responseStatus,\n      Reason: 'See the details in CloudWatch Log Stream: ' + context.logStreamName,\n      PhysicalResourceId: context.logStreamName,\n      StackId: event.StackId,\n      RequestId: event.RequestId,\n      LogicalResourceId: event.LogicalResourceId,\n      Data: responseData\n  });\n\n  console.log('RESPONSE BODY:\\n', responseBody);\n\n  var https = require('https');\n  var url = require('url');\n\n  var parsedUrl = url.parse(event.ResponseURL);\n  var options = {\n      hostname: parsedUrl.hostname,\n      port: 443,\n      path: parsedUrl.path,\n      method: 'PUT',\n      headers: {\n        \"content-type\": \"\",\n        \"content-length\": responseBody.length\n      }\n  };\n\n  console.log('SENDING RESPONSE...\\n');\n\n  var request = https.request(options, function(response) {\n      console.log('STATUS: ' + response.statusCode);\n      console.log('HEADERS: ' + JSON.stringify(response.headers));\n      callback(null);\n  });\n\n  request.on('error', function(error) {\n    console.log('sendResponse Error:' + error);\n    callback(null);\n  });\n\n  request.write(responseBody);\n  request.end();\n}\n"
  },
  {
    "path": "ElasticSearchLambda/ZombieWorkshopSearchIndexing.js",
    "content": "var AWS = require('aws-sdk');\nvar path = require('path');\n\n/* == Globals == */\nvar esDomain = {\n    region: 'us-west-2',\n    endpoint: 'https://ENDPOINT_HERE',\n    index: 'messages',\n    doctype: 'message'\n};\nvar endpoint = new AWS.Endpoint(esDomain.endpoint);\nvar creds = new AWS.EnvironmentCredentials('AWS');\n\n\n/* Lambda \"main\": Execution begins here */\nexports.handler = function(event, context) {\n    \n        console.log(JSON.stringify(event, null, '  '));\n        event.Records.forEach(function(record) {\n            if (typeof record.dynamodb.NewImage != 'undefined')\n             {\n                var doc = {message: {\n                    name: record.dynamodb.NewImage.name.S,\n                    message: record.dynamodb.NewImage.message.S,\n                    channel: record.dynamodb.NewImage.channel.S,\n                    timestamp: record.dynamodb.NewImage.timestamp.N}\n                }\n                console.log('document posted to ElasticSearch: ' + JSON.stringify(doc))\n                postToES(JSON.stringify(doc), context);\n             }\n             else\n             {\n                 console.log('skipping non-inserts');\n             }\n        });\n}\n\n\n/*\n * Post the given document to Elasticsearch\n */\nfunction postToES(doc, context) {\n    var req = new AWS.HttpRequest(endpoint);\n\n    console.log('create post request');\n    req.method = 'POST';\n    req.path = path.join('/', esDomain.index, esDomain.doctype);\n    req.region = esDomain.region;\n    req.headers['presigned-expires'] = false;\n    req.headers['Host'] = endpoint.host;\n    req.body = doc;\n\n    console.log('Creating the Signer for the post request');\n    var signer = new AWS.Signers.V4(req , 'es');  // es: service code\n    signer.addAuthorization(creds, new Date());\n\n    console.log('Sending Data');\n    var send = new AWS.NodeHttpClient();\n    send.handleRequest(req, null, function(httpResp) {\n        var respBody = '';\n        httpResp.on('data', function (chunk) {\n            respBody += chunk;\n        });\n        httpResp.on('end', function (chunk) {\n            console.log('Response: ' + respBody);\n            context.succeed('Lambda added document ' + doc);\n        });\n    }, function(err) {\n        console.log('Error: ' + err);\n        context.fail('Lambda failed with error ' + err);\n    });\n}\n"
  },
  {
    "path": "LICENSE",
    "content": "                                 Apache License\n                           Version 2.0, January 2004\n                        http://www.apache.org/licenses/\n\n   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n\n   1. Definitions.\n\n      \"License\" shall mean the terms and conditions for use, reproduction,\n      and distribution as defined by Sections 1 through 9 of this document.\n\n      \"Licensor\" shall mean the copyright owner or entity authorized by\n      the copyright owner that is granting the License.\n\n      \"Legal Entity\" shall mean the union of the acting entity and all\n      other entities that control, are controlled by, or are under common\n      control with that entity. For the purposes of this definition,\n      \"control\" means (i) the power, direct or indirect, to cause the\n      direction or management of such entity, whether by contract or\n      otherwise, or (ii) ownership of fifty percent (50%) or more of the\n      outstanding shares, or (iii) beneficial ownership of such entity.\n\n      \"You\" (or \"Your\") shall mean an individual or Legal Entity\n      exercising permissions granted by this License.\n\n      \"Source\" form shall mean the preferred form for making modifications,\n      including but not limited to software source code, documentation\n      source, and configuration files.\n\n      \"Object\" form shall mean any form resulting from mechanical\n      transformation or translation of a Source form, including but\n      not limited to compiled object code, generated documentation,\n      and conversions to other media types.\n\n      \"Work\" shall mean the work of authorship, whether in Source or\n      Object form, made available under the License, as indicated by a\n      copyright notice that is included in or attached to the work\n      (an example is provided in the Appendix below).\n\n      \"Derivative Works\" shall mean any work, whether in Source or Object\n      form, that is based on (or derived from) the Work and for which the\n      editorial revisions, annotations, elaborations, or other modifications\n      represent, as a whole, an original work of authorship. For the purposes\n      of this License, Derivative Works shall not include works that remain\n      separable from, or merely link (or bind by name) to the interfaces of,\n      the Work and Derivative Works thereof.\n\n      \"Contribution\" shall mean any work of authorship, including\n      the original version of the Work and any modifications or additions\n      to that Work or Derivative Works thereof, that is intentionally\n      submitted to Licensor for inclusion in the Work by the copyright owner\n      or by an individual or Legal Entity authorized to submit on behalf of\n      the copyright owner. For the purposes of this definition, \"submitted\"\n      means any form of electronic, verbal, or written communication sent\n      to the Licensor or its representatives, including but not limited to\n      communication on electronic mailing lists, source code control systems,\n      and issue tracking systems that are managed by, or on behalf of, the\n      Licensor for the purpose of discussing and improving the Work, but\n      excluding communication that is conspicuously marked or otherwise\n      designated in writing by the copyright owner as \"Not a Contribution.\"\n\n      \"Contributor\" shall mean Licensor and any individual or Legal Entity\n      on behalf of whom a Contribution has been received by Licensor and\n      subsequently incorporated within the Work.\n\n   2. Grant of Copyright License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      copyright license to reproduce, prepare Derivative Works of,\n      publicly display, publicly perform, sublicense, and distribute the\n      Work and such Derivative Works in Source or Object form.\n\n   3. Grant of Patent License. Subject to the terms and conditions of\n      this License, each Contributor hereby grants to You a perpetual,\n      worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n      (except as stated in this section) patent license to make, have made,\n      use, offer to sell, sell, import, and otherwise transfer the Work,\n      where such license applies only to those patent claims licensable\n      by such Contributor that are necessarily infringed by their\n      Contribution(s) alone or by combination of their Contribution(s)\n      with the Work to which such Contribution(s) was submitted. If You\n      institute patent litigation against any entity (including a\n      cross-claim or counterclaim in a lawsuit) alleging that the Work\n      or a Contribution incorporated within the Work constitutes direct\n      or contributory patent infringement, then any patent licenses\n      granted to You under this License for that Work shall terminate\n      as of the date such litigation is filed.\n\n   4. Redistribution. You may reproduce and distribute copies of the\n      Work or Derivative Works thereof in any medium, with or without\n      modifications, and in Source or Object form, provided that You\n      meet the following conditions:\n\n      (a) You must give any other recipients of the Work or\n          Derivative Works a copy of this License; and\n\n      (b) You must cause any modified files to carry prominent notices\n          stating that You changed the files; and\n\n      (c) You must retain, in the Source form of any Derivative Works\n          that You distribute, all copyright, patent, trademark, and\n          attribution notices from the Source form of the Work,\n          excluding those notices that do not pertain to any part of\n          the Derivative Works; and\n\n      (d) If the Work includes a \"NOTICE\" text file as part of its\n          distribution, then any Derivative Works that You distribute must\n          include a readable copy of the attribution notices contained\n          within such NOTICE file, excluding those notices that do not\n          pertain to any part of the Derivative Works, in at least one\n          of the following places: within a NOTICE text file distributed\n          as part of the Derivative Works; within the Source form or\n          documentation, if provided along with the Derivative Works; or,\n          within a display generated by the Derivative Works, if and\n          wherever such third-party notices normally appear. The contents\n          of the NOTICE file are for informational purposes only and\n          do not modify the License. You may add Your own attribution\n          notices within Derivative Works that You distribute, alongside\n          or as an addendum to the NOTICE text from the Work, provided\n          that such additional attribution notices cannot be construed\n          as modifying the License.\n\n      You may add Your own copyright statement to Your modifications and\n      may provide additional or different license terms and conditions\n      for use, reproduction, or distribution of Your modifications, or\n      for any such Derivative Works as a whole, provided Your use,\n      reproduction, and distribution of the Work otherwise complies with\n      the conditions stated in this License.\n\n   5. Submission of Contributions. Unless You explicitly state otherwise,\n      any Contribution intentionally submitted for inclusion in the Work\n      by You to the Licensor shall be under the terms and conditions of\n      this License, without any additional terms or conditions.\n      Notwithstanding the above, nothing herein shall supersede or modify\n      the terms of any separate license agreement you may have executed\n      with Licensor regarding such Contributions.\n\n   6. Trademarks. This License does not grant permission to use the trade\n      names, trademarks, service marks, or product names of the Licensor,\n      except as required for reasonable and customary use in describing the\n      origin of the Work and reproducing the content of the NOTICE file.\n\n   7. Disclaimer of Warranty. Unless required by applicable law or\n      agreed to in writing, Licensor provides the Work (and each\n      Contributor provides its Contributions) on an \"AS IS\" BASIS,\n      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n      implied, including, without limitation, any warranties or conditions\n      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n      PARTICULAR PURPOSE. You are solely responsible for determining the\n      appropriateness of using or redistributing the Work and assume any\n      risks associated with Your exercise of permissions under this License.\n\n   8. Limitation of Liability. In no event and under no legal theory,\n      whether in tort (including negligence), contract, or otherwise,\n      unless required by applicable law (such as deliberate and grossly\n      negligent acts) or agreed to in writing, shall any Contributor be\n      liable to You for damages, including any direct, indirect, special,\n      incidental, or consequential damages of any character arising as a\n      result of this License or out of the use or inability to use the\n      Work (including but not limited to damages for loss of goodwill,\n      work stoppage, computer failure or malfunction, or any and all\n      other commercial damages or losses), even if such Contributor\n      has been advised of the possibility of such damages.\n\n   9. Accepting Warranty or Additional Liability. While redistributing\n      the Work or Derivative Works thereof, You may choose to offer,\n      and charge a fee for, acceptance of support, warranty, indemnity,\n      or other liability obligations and/or rights consistent with this\n      License. However, in accepting such obligations, You may act only\n      on Your own behalf and on Your sole responsibility, not on behalf\n      of any other Contributor, and only if You agree to indemnify,\n      defend, and hold each Contributor harmless for any liability\n      incurred by, or claims asserted against, such Contributor by reason\n      of your accepting any such warranty or additional liability.\n\n   END OF TERMS AND CONDITIONS\n\n   APPENDIX: How to apply the Apache License to your work.\n\n      To apply the Apache License to your work, attach the following\n      boilerplate notice, with the fields enclosed by brackets \"{}\"\n      replaced with your own identifying information. (Don't include\n      the brackets!)  The text should be enclosed in the appropriate\n      comment syntax for the file format. We also recommend that a\n      file or class name and description of purpose be included on the\n      same \"printed page\" as the copyright notice for easier\n      identification within third-party archives.\n\n   Copyright {yyyy} {name of copyright owner}\n\n   Licensed under the Apache License, Version 2.0 (the \"License\");\n   you may not use this file except in compliance with the License.\n   You may obtain a copy of the License at\n\n       http://www.apache.org/licenses/LICENSE-2.0\n\n   Unless required by applicable law or agreed to in writing, software\n   distributed under the License is distributed on an \"AS IS\" BASIS,\n   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n   See the License for the specific language governing permissions and\n   limitations under the License.\n"
  },
  {
    "path": "NOTICE",
    "content": "Zombie Microservices Workshop: Lab Guide\nCopyright 2016 Amazon.com, Inc. or its affiliates. All Rights Reserved. \n"
  },
  {
    "path": "README.md",
    "content": "# This workshop is no longer actively being maintained and is not recommended for use. Please visit our [Wild Rydes Serverless Workshops](https://github.com/aws-samples/aws-serverless-workshops) for the latest hands-on examples of building serverless applications. This workshop is preserved here for interested community members to fork and update as separate project.\n\n# Zombie Microservices Workshop: Lab Guide\n\n## Overview of Workshop Labs\nThe [Zombie Microservices Workshop](http://aws.amazon.com/events/zombie-microservices-roadshow/) introduces the basics of building serverless applications using [AWS Lambda](https://aws.amazon.com/lambda/), [Amazon API Gateway](https://aws.amazon.com/api-gateway/), [Amazon DynamoDB](https://aws.amazon.com/dynamodb/), [Amazon Cognito](https://aws.amazon.com/cognito/), [Amazon SNS](https://aws.amazon.com/sns/), and other AWS services. In this workshop, as a new member of the AWS Lambda Signal Corps, you are tasked with completing the development of a serverless survivor communications system during the Zombie Apocalypse.\n\nThis workshop has a baseline survivor chat app that is launched via [CloudFormation](https://aws.amazon.com/cloudformation/). Complete the lab exercises to extend the functionality of the communications system or add your own custom functionality!\n\nPrior to beginning the labs, you will need to finalize the setup of User authentication for the application with [Cognito User Pools](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools.html). This is a necessary step to finalize the readiness of the application.\n\n### Required: Setup Authentication with Cognito User Pools\nIn this setup lab, you will integrate user authentication into your serverless survivor chat application using Amazon Cognito User Pools.\n\n### Labs\nEach of the labs in this workshop is an independent section and you may choose to do some or all of them, or in any order that you prefer.\n\n* **Lab 1: Typing Indicator**  \n\n  This exercise already has the UI and backend implemented, and focuses on how to setup the API Gateway to provide a RESTful endpoint. You will configure the survivor chat application to display which survivors are currently typing in the chat room.\n\n* **Lab 2: SMS Integration with Twilio**  \n\n    This exercise uses [Twilio](http://twilio.com) to integrate SMS text functionality with the survivor chat application. You will configure a free-trial Twilio phone number so that users can send text messages to the survivor chat application. You'll learn to leverage mapping templates in API Gateway to perform data transformations in an API.\n\n* **Lab 3: Search Integration with Elasticsearch**  \n\n    This exercise adds an Elasticsearch cluster to the application which is used to index chat messages streamed from the DynamoDB table containing chat messages.\n\n* **Lab 4: Slack Integration**  \n\n    This exercise integrates the popular messaging app, [Slack](http://slack.com), into the chat application so that survivors can send messages to the survivor chat from within the Slack app.\n\n* **Lab 5: Intel Edison Zombie Motion Sensor** (IoT device required)\n\n    This exercise integrates motion sensor detection of zombies to the chat system using an Intel Edison board and a Grove PIR Motion Sensor. You will configure a Lambda function to consume motion detection events and push them into the survivor chat!\n\n### Workshop Cleanup\n\nThis section provides instructions to tear down your environment when you're done working on the labs.\n\n* * *\n\n### Let's Begin! Launch the CloudFormation Stack\n*Prior to launching a stack, be aware that a few of the resources launched need to be manually deleted when the workshop is over. When finished working, please review the \"Workshop Cleanup\" section to learn what manual teardown is required by you.*\n\n1\\. To begin this workshop, **click one of the 'Deploy to AWS' buttons below for the region you'd like to use**. This is the AWS region where you will launch resources for the duration of this workshop. This will open the CloudFormation template in the AWS Management Console for the region you select.\n\nRegion | Launch Template\n------------ | -------------\n**N. Virginia** (us-east-1) | [![Launch Zombie Workshop Stack into Virginia with CloudFormation](/Images/deploy-to-aws.png)](https://console.aws.amazon.com/cloudformation/home?region=us-east-1#/stacks/new?stackName=zombiestack&templateURL=https://s3.amazonaws.com/aws-zombie-workshop-us-east-1/CreateZombieWorkshop.json)\n**Ohio** (us-east-2) | [![Launch Zombie Workshop Stack into Ohio with CloudFormation](/Images/deploy-to-aws.png)](https://console.aws.amazon.com/cloudformation/home?region=us-east-2#/stacks/new?stackName=zombiestack&templateURL=https://s3-us-east-2.amazonaws.com/aws-zombie-workshop-us-east-2/CreateZombieWorkshop.json)\n**Oregon** (us-west-2) | [![Launch Zombie Workshop Stack into Oregon with CloudFormation](/Images/deploy-to-aws.png)](https://console.aws.amazon.com/cloudformation/home?region=us-west-2#/stacks/new?stackName=zombiestack&templateURL=https://s3-us-west-2.amazonaws.com/aws-zombie-workshop-us-west-2/CreateZombieWorkshop.json)\n**Ireland** (eu-west-1) | [![Launch Zombie Workshop Stack into Ireland with CloudFormation](/Images/deploy-to-aws.png)](https://console.aws.amazon.com/cloudformation/home?region=eu-west-1#/stacks/new?stackName=zombiestack&templateURL=https://s3-eu-west-1.amazonaws.com/aws-zombie-workshop-eu-west-1/CreateZombieWorkshop.json)\n**Frankfurt** (eu-central-1) | [![Launch Zombie Workshop Stack into Frankfurt with CloudFormation](/Images/deploy-to-aws.png)](https://console.aws.amazon.com/cloudformation/home?region=eu-central-1#/stacks/new?stackName=zombiestack&templateURL=https://s3-eu-central-1.amazonaws.com/aws-zombie-workshop-eu-central-1/CreateZombieWorkshop.json)\n**Tokyo** (ap-northeast-1) | [![Launch Zombie Workshop Stack into Tokyo with CloudFormation](/Images/deploy-to-aws.png)](https://console.aws.amazon.com/cloudformation/home?region=ap-northeast-1#/stacks/new?stackName=zombiestack&templateURL=https://s3-ap-northeast-1.amazonaws.com/aws-zombie-workshop-ap-northeast-1/CreateZombieWorkshop.json)\n**Seoul** (ap-northeast-2) | [![Launch Zombie Workshop Stack into Seoul with CloudFormation](/Images/deploy-to-aws.png)](https://console.aws.amazon.com/cloudformation/home?region=ap-northeast-2#/stacks/new?stackName=zombiestack&templateURL=https://s3-ap-northeast-2.amazonaws.com/aws-zombie-workshop-ap-northeast-2/CreateZombieWorkshop.json)\n**Singapore** (ap-southeast-1) | [![Launch Zombie Workshop Stack into Singapore with CloudFormation](/Images/deploy-to-aws.png)](https://console.aws.amazon.com/cloudformation/home?region=ap-southeast-1#/stacks/new?stackName=zombiestack&templateURL=https://s3-ap-southeast-1.amazonaws.com/aws-zombie-workshop-ap-southeast-1/CreateZombieWorkshop.json)\n**Sydney** (ap-southeast-2) | [![Launch Zombie Workshop Stack into Sydney with CloudFormation](/Images/deploy-to-aws.png)](https://console.aws.amazon.com/cloudformation/home?region=ap-southeast-2#/stacks/new?stackName=zombiestack&templateURL=https://s3-ap-southeast-2.amazonaws.com/aws-zombie-workshop-ap-southeast-2/CreateZombieWorkshop.json)\n\n*If you have CloudFormation launch FAILED issues, please try launching in us-east-1 (Virginia)*\n\n2\\. Once you have chosen a region and are inside the AWS CloudFormation Console, you should be on a screen titled \"Select Template\". We are providing CloudFormation with a template on your behalf, so click the blue **Next** button to proceed.\n\n3\\. On the following screen, \"Specify Details\", your Stack is pre-populated with the name \"zombiestack\". You can customize that to a name of your choice **less than 15 characters in length** or leave as is. For the parameters section, if you want to develop with a team and would like to create IAM Users in your account to grant your teammates access, then specify how many teammates/users you want to be created in the **NumberOfTeammates** text box. Otherwise, leave it defaulted to 0 and no additional users will be created. The user launching the stack (you) already have the necessary permissions. Click **Next**.\n\n*If you create IAM users, an IAM group will also be created and those users will be added to that group. On deletion of the stack, those resources will be deleted for you.*\n\n4\\. On the \"Options\" page, leave the defaults and click **Next**.\n\n5\\. On the \"Review\" page, verify your selections, then scroll to the bottom and select the checkbox **I acknowledge that AWS CloudFormation might create IAM resources**. Then click **Create** to launch your stack.\n\n6\\. Your stack will take about 3 minutes to launch and you can track its progress in the \"Events\" tab. When it is done creating, the status will change to \"CREATE_COMPLETE\".\n\n7\\. Click the \"Outputs\" tab in CloudFormation and click the link for \"MyChatRoomURL\". This should open your chat application in a new tab. Leave this tab open as you'll come back to it later.\n\nPlease continue to the next section for the required Cognito User Pools authentication setup.\n\n## Setup Authentication with Cognito User Pools (Required)\n\nThe survivor chat uses [Amazon Cognito](https://aws.amazon.com/cognito/) for authentication. Cognito Federated Identity enables you to authenticate users through an external identity provider and provides temporary security credentials to access your app’s backend resources in AWS or any service behind Amazon API Gateway. Amazon Cognito works with external identity providers that support SAML or OpenID Connect, social identity providers (such as Facebook, Twitter, Amazon) and you can also integrate your own identity provider.\n\nIn addition to federating 3rd party providers such as Facebook, Google, and other providers, Cognito also offers a new built-in Identity Provider called [Cognito User Pools](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools.html).\n\nA Cognito Federated Identity pool has already been created for you when you launched CloudFormation.\n\nYou will now setup the Cognito User Pool as the user directory of your chat app survivors and configure it as a valid Authentication Provider with the Cognito Federated Identity Pool. API Gateway has been configured with IAM Authorization to only allow requests that are signed with valid AWS permissions. When a user signs into the Survivor Chat App (User Pool) successfully, a web call is made to the Cognito Federated Identity Pool to assume temporary AWS credentials for your authenticated user. These credentials are used to make signed [AWS SigV4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) HTTPS requests to your message API.\n\n![Overview of Cognito Authentication](/Images/CognitoOverview.png)\n\n**Let's get started...**\n\n1\\. Navigate to the Cognito service console.\n\n![Navigate to the Cognito service](/Images/Cognito-Step1.png)\n\nCognito User Pools is not available in all AWS regions. Please review the list [here](https://docs.aws.amazon.com/general/latest/gr/rande.html#cognito_identity_region) for the regions that Cognito is available in. Therefore if you launched your CloudFormation stack in any region other than one of those listed on the above website, then please use the top navigation bar in the management console to switch AWS regions and navigate to **us-east-1 (Virginia)** to configure Cognito. Your application will stay hosted in the region you launched the CloudFormation template, but the authentication with Cognito will reside in us-east-1 (Virginia). If you launched the Cloudformation stack in one of those regions where Cognito exists, then please simply navigate to the Cognito service in the AWS Management Console as the service is available in that region already and you will configure it within that region.\n\nWhen inside the Cognito service console, click the blue button **Manage your User Pools**. You will setup the user directory that your chat application users will authenticate to when they use your app.\n\n2\\. Click the blue button **Create a User Pool** in the upper right corner. You'll create a new user directory.\n\n3\\. In the \"Pool Name\" text box, name your user pool **[Your CloudFormation stack name]-userpool**. For example, if you named your CloudFormation stack \"sample\" earlier, then your user pool name would be \"sample-userpool\". After naming your User Pool, click **Step through Settings** to continue with manual setup.\n\n4\\. On the attributes page, select the \"Required\" checkbox for the following attributes: **email, name, phone number**.\n\n* Cognito User Pools allows you to define attributes that you'd like to associate with users of your application. These represent values that your users will provide when they sign up for your app. They are available to your application as a part of the session data provided to your client apps when users authenticate with Cognito.\n\n5\\. Click the link \"Add custom attribute\". Leave all the defaults and type a \"Name\" of **slackuser** exactly as typed here. Add 2 additional custom attributes: **slackteamdomain** and **camp**.\n\n* Within a User Pool, you can specify custom attributes which you define when you create the User Pool. For the Zombie Survivor chat application, we will include 3 custom attributes.\n\nYour attributes configuration should match the image below:\n\n![Cognito User Pools: Attributes Configuration](/Images/Cognito-Step5.png)\n\nClick **Next Step**.\n\n6\\. On the Policies page, leave the Password policy settings as default and click **Next step**.\n\n7\\. On the verifications page, leave the defaults and click **Next step**.\n\n* We will not require MFA for this application. However, for during sign up we are requiring verification via email address. This is denoted with the email checkbox selected for \"Do you want to require verification of emails or phone numbers?\". With this setting, when users sign up for the application, a confirmation code will be sent to their email which they'll be required to input into the application for confirmation.\n\n8\\. On the \"Message Customizations\" page, in the section titled **Do you want to customize your email verification message?** add a custom email subject such as \"Signal Corps Survivor Confirmation\". We won't modify the message body but you could add your own custom message in there. We'll let Cognito send the emails from the service email address, but in production you could configure Cognito to send these verifications from an email server you own. Leave the rest of the default settings and click **Next step**.\n\nOn the Tags page, leave the defaults and click **Next step**. Next, on the Devices page, leave the default option of \"No\" selected. We will not configure the User Pool to remember user's devices.\n\n9\\. On the Apps page, click **Add an app**. In the **App Name** textbox, type \"Zombie Survivor Chat App\" and **deselect the client secret checkbox**. Click **Set attribute read and write permissions**. You need to make sure that the app has \"writable\" and \"readable\" access to the attributes you created. Make sure that **all of the checkboxes are selected** for \"Readable Attributes\" and \"Writable Attributes\". Then click **Create app**, and then click **Next step**.\n\n10\\. In the dropdowns for the **Pre authentication** and **Post confirmation** triggers, select the Lambda function named \"[Your CloudFormation Stack name]-CognitoLambdaTrigger-[Your Region]\". Click **Next step**.\n\n* Cognito User Pools allows developers to inject custom workflow logic into the signup and signin process. This custom workflow logic is represented with AWS Lambda functions known as Lambda Triggers.\n\n* With this feature, developers can pass information to a Lambda function and specify that function to invoke at different stages of the signup/signin process, allowing for a serverless and event driven authentication process.\n\n* In this application, we will create two (2) Lambda triggers:\n\n    * Post-Confirmation: This trigger will invoke after a user successfully submits their verification code upon signup and becomes a confirmed user. The Lambda function associated with this trigger takes the attributes provided by the user and inserts them into a custom Users table in DynamoDB that was created with CloudFormation. This allows us to perform querying of user attributes within our application.\n\n    * Pre-Authentication: This trigger will invoke when a user's information is submitted for authentication to Cognito each time the survivor signs into the web application. The code for with this Lambda Trigger takes the user's attributes have been passed in as parameters from the invoking User Pool and using them to perform an update on the User's record in DynamoDB Users table. This allows us to load the user's data into DynamoDB when they initially sign in and also keep it current with the values in User Pools in an on-going basis as they log in each time.\n\n    * For this workshop we use the same backend Lambda function for both of the triggers. On invocation, the function checks what type of even has occurred, Post-Confirmation or Pre-Authentication, and executes the correct code accordingly.\n\n11\\. Review the settings for your User Pool and click **Create pool**. If your pool created successfully you should be returned to the Pool Details page and it will display a green box that says \"Your user pool was created successfully\".\n\n12\\. Open a text editor on your computer and copy into it the \"Pool Id\" displayed on the Pool details page. Then click into the **Apps** tab found on the left side navigation pane. You should see an **App client id** displayed. Copy that **App client id** into your text editor as well.\n\nYou are done configuring the User Pool. You will now setup federation into the Cognito Identity Pool that has already been created for you.\n\n* An [Amazon Cognito Identity Pool](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-identity.html) has been configured for you. Identity Pools allow external federated users to assume temporary credentials from AWS to make service API calls from within your apps.\n\n* You've just created the User Pool for authentication into your app. Now your users still need access to make IAM Authorized AWS API calls.\n\n* You'll setup federation inside of Cognito Identity and allow your User Pool as an **Authentication Provider**.\n\nOn the top navigation bar in the management console, switch to **Federated Identities** by clicking the link as shown below.\n\n![Navigating to Federated Identities Console](/Images/Cognito-Step12.png)\n\n13\\. Click into the Identity Pool that has already been created for you. It should be named \"[Your CloudFormation stack name] _ identitypool\". On the Idenity pool dashboard, in the upper right, select **Edit identity pool**.\n\n14\\. Cognito Identity allows you to give access to both authenticated users and unauthenticated (guest) users. The permissions associated with these groups of users is dictated by the IAM role that you attach to these Cognito roles. Your Authenticated and Unauthenticated Cognito roles have already been configured for you in CloudFormation. The Authenticated role has been configured to give permissions to the principal (your Cognito authenticated application user) to make \"execute-api:invoke\" calls to the API Gateway endpoint ARNs associated with the survivor serverless app.\n\n* When users authenticate into the application, they become an authenticated user, and the application allows them to send chat messages to the survivor chat.\n\n15\\. Click the black dropdown arrow in the section titled \"Authentication providers\". You will configure your Identity pool to allow federated access from your Identity Provider, your Cognito User Pool. In the \"Cognito\" identity provider tab, insert your **User Pool ID** and **App Client ID** into their respective text boxes from your text editor file. Do not delete them from the text file, you'll need these items again in a later step.\n\nYou should have copied these from your User Pool earlier when you set it up. If you do not have these copied, please navigate back to your Cognito User Pool you created earlier and locate your User Pool Id and App Client ID.\n\nScroll to the bottom of the page and click **Save Changes** to save the User Pool configuration settings. Your Cognito Federated Identiy Pool has been configured with Congito User Pool as an IdP. When users authenticate to the User Pool, they will assume temporary credentials with the permissions allowed via the Authenticated Role.\n\n16\\. You will now make an update to an application config file so that the serverless Javascript application can communicate with your User Pool to log users in.\n\nNavigate to the Amazon S3 console **in the region where you launched your CloudFormation stack.**\n\n* If you changed regions to configure Cognito, please return back to the region where you launched the stack and navigate to the S3 service.\n\n![Navigate to the S3 service](/Images/Cognito-Step16.png)\n\n17\\. On the Amazon S3 buckets listing page, find and click into the bucket that was created for you by CloudFormation. It should be named with your stack name prepended to the beginning. Something like [CloudFormation Stack Name]-s3bucketforwebsitecontent\"....\n\n* In the S3 Console search bar you can type **s3bucketforwebsitecontent** and your S3 bucket will display.\n\n18\\. This bucket contains all the contents for hosting your serverless JS app as well as the source code for the workshop's Lambda functions and CloudFormation resources. Please do not delete these contents. Click into the folder (prefix) named **S3** and navigate through to the file **S3/assets/js/constants.js**\n\nDownload the **S3/assets/js.constants.js** file to your local machine and open it with a text editor.\n\n![Download the constants.js file](/Images/Cognito-Step18.png)\n\n19\\. Open up the constants.js file and copy over the User Pool ID into the \"USER_POOL_ID\" variable. Then copy the App Client ID into the \"CLIENT_ID\" variable. These should be copied from the open text file you had open from earlier.\n\n* Your serverless javascript zombie application requires this constants values in file communicate with the different services of the workshop.\n\n* The Identity Pool Id was automatically filled in with several other variables when the CloudFormation template was launched.\n\n20\\. Save the constants.js file and upload it back to S3. While in the S3 console window, make sure you are in the **js** directory. Click the blue **Upload** button and upload the constants.js file from your local machine. Within the upload dialog, select the \"Manage public permissions\" dropdown and set the permissions on the file to read-only for the public by selecting the **Read** checkbox next to Everyone under the Objects category. You can also drag your file from your local machine into the S3 browser console to initiate an upload and then when the object is uploaded, make sure to select **Make Public**.\n\n* Your application now has the configuration it needs to interact with Cognito.\n\n21\\. Navigate back to CloudFormation and find the Chat Room URL (MyChatRoomURL) in the Outputs tab of your CloudFormation stack. Click it to open the chat application in a new browser window.\n\n* If you already had the application opened in your browser, please refresh the page so that the new constants.js loads with the app.\n\n22\\. You should see a sign in page for the Zombie survivor web app. You need to create an account so click **Sign Up**.\n\n23\\. Fill out the form to sign up as a survivor.\n\n* **Select your Camp**: Specify the geography where you live! Currently this attribute is not used in the application and is available for those that want to tackle an extra credit opportunity!. When you're done with the workshop, try and tackle the Channel Challenge in the Appendix.\n\n* **Slack Username**: Type the Slack Username you will use during the Slack lab of this workshop. This associates your Slack username with your Survivor app user account and is required if you want to do the Slack lab.\n\n* **Slack Team Domain Name**: Slack users can be members of many teams. Type the Slack team domain name that you want to integrate with this survivor chat app. The combination of a Slack team domain and Slack Username will unique identity a user to associate with your new Survivor chat app account.\n\nWhen done, click **Sign Up**.\n\n24\\. A form should appear asking you to type in your confirmation code. Please check your inbox for the email address you signed up with. You should received an email with the subject \"Signal Corps Survivor Confirmation\" (May be in your Spam folder!). Copy over the verification code and enter into the confirmation window.\n\n**Troubleshooting tips:**\n\n* If you are getting errors during the signup, please revisit the settings for your Cognito User Pool. You need to make sure that you've done the following -  \n\n    * Configured your Cognito Lambda triggers for both the **Pre-Authentication** and **Post-Confirmation** steps as described in Step 10.\n\n    * Properly modified the constants.js config file and re-uploaded it to the JS directory for your application in S3. After you uploaded this constants.js file, you should have refreshed your zombie chat browser application page so that it could pull down the latest JS files. The application is client-side and needs this file's properties in order to bootstrap itself.\n\n* Users created in the application are also stored in a DynamoDB table named \"Users\". If you did not have your Cognito triggers set up correctly, you will need to navigate to the DynamoDB Users table and delete the entry for your user. You can then re-register in the application again.\n\n\n![Confirm your signup](/Images/Cognito-Step24.png)\n\nAfter confirming your account, sign in with your credentials and begin chatting! You should see a red button called **Start Chatting** - click that button to toggle your session on. You may then begin typing messages followed by the \"Enter\" key to submit them.\n\n25\\. Your messages should begin showing up in the central chat pane window. Feel free to share the URL with your teammates, have them signup for accounts and begin chatting as a group! If you are building this solution solo, you can create multiple user accounts with different email addresses. Then login to both user accounts in different browsers to simulate multiple users.\n\n**The baseline chat application is now configured and working! There is still important functionality missing and the Lambda Signal Corps needs you to build it out...so get started below!**\n\n*This workshop does not utilize API Gateway Cache. Please KEEP THIS FEATURE TURNED OFF as it is not covered under the AWS Free Tier and will incur additional charges. It is not a requirement for the workshop.*\n\n## Lab 1 - Typing Indicator\n\n**What you'll do in this lab...**\n\nIn this section you will create functionality in your chat application that allows survivors to see which survivors in the chat room are currently typing. To configure this functionality, you will modify your API to integrate with backend Lambda functions that are responsible for querying and returning the users currently typing in the system, as well as updating metadata in the \"talkers\" DynamoDB table that contains details about which survivors are typing at which times. The survivor chat app continuously polls this API endpoint with GET requests to determine who is typing. As survivors are typing, POST requests are made to this same endpoint to update the talkers DynamoDB table.\n\nThe typing indicator shows up in the web chat client in a section below the chat message panel. The UI and backend Lambda functions have already been implemented, and this lab focuses on how to configure your new integration in API Gateway.\n\nThe application uses [CORS](http://docs.aws.amazon.com/AmazonS3/latest/dev/cors.html). This lab will both wire up the backend Lambda function as well as perform the necessary steps to enable CORS.\n\n**Typing Indicator Architecture**\n![Overview of Typing Indicator Architecture](/Images/TypingIndicatorOverview.png)\n\n1\\. Navigate to the API Gateway service. You can search for it on the main console homepage or type in the service name to quickly access the service (as shown below)\n![API Gateway in Management Console](/Images/Typing-Step1.png)\n\n2\\. On the APIs listing screen in API Gateway, click into your Zombie chat API. It should be prefixed with the name of your CloudFormation stack that launched it. By default this should be \"zombiestack-\". Select the Zombie Workshop API Gateway.\n\n3\\. Click the **GET** method of your /zombie/talkers resource located at **/zombie/talkers/GET**. You can do this by clicking the \"GET\" method under the /zombie/talkers resource. The GET method is highlighted in blue in the image below. Click there.\n![GET Method](/Images/Typing-Step3.png)\n\n*This GET HTTP method is used by the survivor chat app to perform continuous queries on the DynamoDB talkers table to determine which users are typing.*\n\n4\\. Click the **Integration Request** box.\n\n5\\. Under \"Integration Type\", Select **Lambda Function.**\n\n* Currently, this API method is configured to a \"MOCK\" integration. MOCK integrations are dummy backends that are useful when you are testing and don't yet have the backend built out but need the API to return sample dummy data. You will remove the MOCK integration and configure this GET method to connect to a Lambda function that queries DynamoDB.\n\n6\\. For the **Lambda Region** field, select the region in which you launched the CloudFormation stack. (HINT: Select the region code that corresponds with the yellow CloudFormation button you clicked to launch the CloudFormation template. You can also look in the upper right corner of the Management Console to see which region you are in). For example if you launched your stack in Virginia (us-east-1), then you will select us-east-1 as your Lambda Region.\n\n* When you launched the CloudFormation template, the launch also created several Lambda functions for you locally in the region where you launched your CFN stack - this includes functions for retrieving data from and putting data into a DynamoDB \"Talkers\" table with details about which survivors are currently typing in the chat room.\n\n7\\. For the Lambda Function field, begin typing \"gettalkers\" in the text box. In the auto-fill dropdown, select the function that contains \"GetTalkersFromDynamoDB\" in the name. It should look something like this.... **[CloudformationTemplateName]-[XXXXXXX]-GetTalkersFromDynamoDB-[Your Region]**.\n\n* This Lambda function is written in NodeJs. It performs GetItem DynamoDB requests on a Table called Talkers. This talkers table contains records that are continuously updated whenever users type in the chat room. By hooking up this Lambda function to your GET method, it will get invoked by API Gateway when the chat app polls the API with GET requests.\n\n8\\. Select the blue **Save** button and click **OK** if a pop up asks you to confirm that you want to switch to Lambda integration. Then grant access for API Gateway to invoke the Lambda function by clicking \"OK\" again. This 2nd popup asks you to confirm that you want to allow API Gateway to be able to invoke your Lambda function.\n\n9\\. Click the **Method Execution** back button to return to the method execution overview page. You'll now tell API Gateway what types of HTTP response types you want your API to expose. Click the **Method Response** section of the Method Execution Flow.\n\n10\\. Add a 200 HTTP Status response. Click \"Add Response\", type \"200\" in the status code text box and then click the little checkmark to save the method response, as shown below.\n![Method Response](/Images/Typing-Step10.png)\n\n* You've configured the GET method of the /zombie/talkers resource to allow responses with HTTP status of 200. We could add more response types but we'll skip that for simplicity in this workshop.\n\n11\\. Go to the /zombie/talkers/POST method by clicking the \"POST\" option in the resource tree on the left navigation pane.\n![POST Method](/Images/Typing-Step11.png)\n\n12\\. We're now going to configure to the /zombie/talkers resource to properly integrate with AWS Lambda on POST requests.\n\n**Perform Steps 4-10 again** just as you did for the GET method. However, this time when you are selecting the Lambda Function for the Integration Request, you'll type \"writetalkers\" in the auto-fill and select the function that looks something like this... **[CloudformationTemplateName]-[XXXXXXX]-WriteTalkersToDynamoDB-[Your Region]**. This way on POST requests, API Gateway will invoke your **writetalkers** Lambda function. Don't forget to return to the Method Response section for this POST method and add a \"200\" HTTP response status as you did for the GET method earlier, if it doesn't exist already.\n\n* In these steps you are configuring the POST method that is used by the chat app to insert data into DynamoDB Talkers table with details about which users are typing. You're performing the same exact method configuration for the POST method as you did for your GET method. However, since this POST method is used for sending data to the database, it triggers a different backend Lambda function. This function writes data to DynamoDB while the \"GetTalkersToDynamoDB\" function was used to retrieve data from DynamoDB.\n\n\t* You could optionally include the logic for both the POST and GET operations inside of a single Lambda function with your own built-in logic that properly checks for and handles POSTs and GETs (or other actions).\n\n13\\. Go to the /zombie/talkers/OPTIONS method\n\n14\\. Select the Method Response.\n\n15\\. Add a 200 method response. Click \"Add Response\", type \"200\" in the status code text box and then click the little checkmark to save the method response.\n\n16\\. Go back to the OPTIONS method flow and select the Integration Response. (To go back, there should be a blue hyperlink titled \"Method Execution\" which will bring you back to the method execution overview screen).\n\n17\\. Select the Integration Response.\n\n18\\. Add a new Integration response with a method response status of 200. Click the \"Method response status\" dropdown and select \"200\". Leave the \"Content Handling\" option set to **Passthrough**. When done, click the blue **Save** button.\n\n* In this section you configured the OPTIONS method simply to respond with HTTP 200 status code. The OPTIONS method type is simply used so that clients can retrieve details about the API resources that are available as well as the methods associated with them.\n\n19\\. Select the /zombie/talkers resource on the left navigation tree.\n![talker resource](/Images/Typing-Step19.png)\n\n20\\. Click the \"Actions\" box and select \"Enable CORS\" in the dropdown.\n\n21\\. Select Enable and Yes to replace the existing values. You should see all green checkmarks for the CORS options that were enabled, as shown below.\n![talker resource](/Images/Typing-Step21.png)\n\n* If you don't see all green checkmarks, this is probably because you forgot to add the HTTP Status 200 code for the Method Response Section. Go back to the method overview section for your POST, GET, and OPTIONS method and make sure that it shows \"HTTP Status: 200\" in the Method Response box.\n\n22\\. Click the \"Actions\" box and select Deploy API  \n![talker resource](/Images/Typing-Step22.png)\n\n23\\. Select the ZombieWorkshopStage deployment and hit the Deploy button.\n\n* In this workshop we deploy the API to a stage called \"ZombieWorkshopStage\". In your real world scenario, you'll likely create different stages of the API to reflect different versions that you'd like to maintain.\n\n**LAB 1 COMPLETE**\n\nHead back to the survivor chat app and **Refresh the page** type messages. POST requests are being made to the Talkers API resource which is updating a DynamoDB table continuously with timestamps along with who is typing. Simultaneously, the application is performing a continuous polling (GET Requests) against /zombie/talkers to show which survivors are typing. This displays\n\n![talker resource](/Images/Typing-Done.png)\n\n* * *\n\n## Lab 2 - SMS Integration with Twilio\n\n**What you'll do in this lab...**\n\nIn this section, you’ll create a free-trial Twilio SMS phone number. You will configure this Twilio phone number with a webhook to forward all incoming text messages sent to your Twilio number to the /zombie/twilio API resource in API Gateway. This will allow you to communicate with survivors in the chat room via text message.\n\n**SMS Twilio Integration Architecture**\n![Overview of Twilio Integration](/Images/TwilioOverview.png)\n\n1\\. Sign up for a free trial Twilio account at https://www.twilio.com/try-twilio. Or if you have an existing Twilio account, login.\n\n2\\. Once you have created your account, login to the Twilio console and navigate to the Home icon on the left navigation pane. On the Home screen/console dashboard, scroll down to the **Phone Numbers** section and click \"Phone Numbers\".\n![Manage Twilio Phone Number](/Images/Twilio-Step2.png)\n\n3\\. On the Phone Numbers screen, click **Get Started** to assign a phone number to your account. Then click the red **Get your first Twilio phone number** button. We’re going to generate a 10-digit phone number in this lab, but a short-code would also work if preferred. This number should be enabled for voice and messaging by default. A popup will appear with your new phone number, click **Choose this number**. If the proposed phone number does not support messaging, click \"Search for a different number\", select your country and select the checkbox \"SMS\", then click \"Search\". Twilio propose a list of phone number, select \"Choose number\" for one of them. Then, type your address, click \"Save and continue\" and \"Done\".\n\n* **International Users** - These are US phone numbers that you are provisioning in Twilio. You can also choose to configure an internationl number in Twilio, however there may be charges that apply. Currently this workshop only supports US phone numbers in the front end JS application due to the necessary formatting logic that has yet to be introduced into the code!\n\nIf you have an international mobile device, you can still do this lab. When registering for a user account in the zombie chat, just use a dummy placeholder 10 digit phone number for now. Later steps in this lab will illustrate a workaround that allows you to send SMS using your international phne number*\n\n4\\. Once you’ve received a phone number, click the **Manage Numbers** button on the left navigation pane. Click on your phone number, which will take you to the properties page for that number.\n\n5\\. Scroll to the bottom of the properties page, to the **Messaging** section. In the **Configure With** dropdown, select the **Webhooks/TwiML** option. Leave this page open for now and proceed to the next step.\n\n* The Twilio webhooks section allows you to integrate your phone number with third party services. In this case, you're going to configure your Twilio phone number to forward any messages it receives over to your API Gateway /zombie/twilio resource with POST requests.\n\n6\\. Now you’ll retrieve your **/zombie/twilio** API endpoint from API Gateway and provide it to Twilio to hook up to AWS. Open the AWS Management console in a new tab, and navigate to API Gateway, as illustrated below. Be sure to leave the Twilio tab open as you’ll need it again to finish setup.\n![API Gateway in Management Console](/Images/Twilio-Step6.png)\n\n7\\. In the API Gateway console, select your API.  Then on the left navigation tree, under your API, click **Stages**.\n![API Gateway Resources Page](/Images/Twilio-Step7.png)\n\n8\\. With \"Stages\" selected, expand the \"ZombieWorkshopStage\" by clicking the blue arrow. Once expanded, select the **POST** method for the **/zombie/twilio** resource. The **/zombie/twilio** resource is the endpoint that we automatically created for you in CloudFormation for SMS integration with twilio.com. You should see an **Invoke URL** displayed for your **/zombie/twilio** resource, as shown below.\n![API Gateway Invoke URL](/Images/Twilio-Step8.png)\n\n9\\. Copy the **Invoke URL** and return to the Twilio website. On the Twilio page that you left open, paste the Invoke URL from API Gateway into the text box next to the label **A message comes in**. Ensure that the request type is set to **HTTP POST**. This is illustrated below.\n![Twilio Request URL](/Images/Twilio-Step9.png)\n\n10\\. Click **Save** to finalize the setup connecting Twilio to your API.\n\n11\\. You will now create the Lambda Function that processes your incoming Twilio messages, parses the message, and proxies it along to your /zombie/message Chat Service. To begin, navigate to the Lambda console.\n\n* As you'll see throughout this workshop, we will leverage separate Lambda functions to pre-process data before sending standardized/formatted requests to the /zombie/message resource. This allows us to-reuse the existing DynamoDB logic sitting behind the /zombie/message resource rather than writing multiple separate functions that all interact with DynamoDB individually. As messages come in to your Twilio number, the Twilio webhook forwards them with HTTP POST requests to your /zombie/twilio resource, which will be integrated with a backend pre-processing Lambda function. This pre-processing function will strip apart the Twilio payload and format it before making a signed SigV4 HTTPS POST to your /zombie/message service which requires IAM authorization in order to be invoked.\n\n12\\. Click **Create a Lambda function** and select the blueprint titled **Blank Function** as we will be creating a brand new function. Click **Next** to skip through the Configure Triggers screen.\n\n13\\. Create a name for the function, such as **\"[Your CloudFormation stack name]-TwilioProcessing\"**. Set the \"Runtime\" as **Node.js 4.3**. In the source code found on Github, open the **TwilioProcessing.js** file found inside the **/Twilio** folder. Delete the sample code in the Lambda console editor and replace it with the entire contents from your TwilioProcessing.js file. Once you have copied the code into Lambda, scroll down to [line 8](/Twilio/TwilioProcessing.js#L8) in the code where the **API** variable is declared. **API.endpoint** should show a value of \"INSERT YOUR API GATEWAY URL HERE INCLUDING THE HTTPS://\". Please replace this string with the fully qualified domain name (FQDN) of the URL for your **/zombie/message** POST method found in API Gateway. For example, it should look something like \"https://xxxxxxxx.execute-api.us-west-2.amazonaws.com\".\n\nYou should also fill in the region code in the variable **API.region**. This should be the region where you launched CloudFormation.\n\nNext, you will also copy in the name of your DynamoDB **Users** table that was created for you. This should be named as **[Your CloudFormation Stack Name]-users\"**. You should copy this table name into the **table** variable in your Lambda code. You will also need to copy in the name of your \"phoneindex\" (this is an index that was created on the DynamoDB table to assist with querying). These attributes can be found in the Outputs section in CloudFormation. You should be copying the values for **DynamoDBUsersTableName** and **DynamoDBUsersPhoneIndex** from CloudFormation.\n\n* Some of the functions in this workshop were originally authored for Nodejs 0.10 but are still capable of running in the Node4.3 runtimes +. The workshop will soon be upgraded to use the latest Nodejs runtime that is supported by Lambda.\n\n14\\. After you have copied the code into the Lambda inline code console and modified the variables, scroll down to the **Lambda function handler and role** section. **Choose an existing role** should be selected from the dropdown. Then for the existing **role**, select the role that looks like **[Your stack name]-ZombieLabLambdaRole...**. For simplicity we are reusing the same Lambda role for our functions.\n\n15\\. Under \"Advancted settings\", set the **Timeout** field to 30 seconds and keep all the rest of the defaults set. Then click **Next** and then **Create function** on the Review page to create your Lambda function.\n\n* You have just created a Lambda function that is integrated as the backend for your /zombie/twilio resource POST method. The function converts the parameters to the correct format for our Chat Service including a conversion to JSON format, and makes an HTTPS POST request to the /zombie/message Chat Service resource. That endpoint will take care of inserting the data into the DynamoDB messages table.\n\n16\\. Now that you have created the TwilioProcessing function, you need to connect it to the **POST** method for your /zombie/twilio endpoint. Navigate back to the API Gateway console and select the **POST** method for your **/zombie/twilio** resource.\n\n17\\. On the **Method Execution** screen for the \"POST\" method, the \"Integration Request\" box should show a type of **MOCK** for your /twilio resource.\n\n18\\. You will now change the **Integration Request** so that instead of integrating with a Mock integration, it will integrate with your TwilioProcessing Lambda function. Click **Integration Request**. On the Integration Request screen, change the \"Integration type\" radio button to **Lambda Function**. In the \"Lambda Region\" dropdown, select the region in which you created your TwilioProcessing Lambda function, and where you launched your CloudFormation Stack. For the **Lambda Function**, begin typing \"TwilioProcessing\" and the autofill should display your function. Select your **TwilioProcessing** function from the autofill. Click **Save**. In the popup window, confirm that you want to switch to Lambda Integration by clicking **OK**. Then confirm that you want to give API Gateway permission to invoke your function by clicking **OK**. Wait a few seconds for the changes to save.\n\n19\\. You will be brought back to the Integration Request page for your \"POST\" method.\n\n20\\. Twilio sends data from their API with a content-type of \"application/x-www-form-urlencoded\", but Lambda requires the content-type to be \"application/json\" for any payload parameters sent to it. You will configure a Mapping Template so that API Gateway converts the content type of incoming messages into JSON before executing your backend Lambda TwilioProcessing function with the parameters.\n\n21\\. On the Integration Request screen for your /zombie/twilio POST method, expand the **Body Mapping Templates** section and click **Add mapping template**. In the textbox for \"Content-Type\", input **application/x-www-form-urlencoded** and click the little checkmark button to continue. Once you have clicked the little checkbox, a popup window will appear asking if you want to only allow requests that match the Content-Type you specified. Click **Yes, secure this integration**. A new section will appear below with a dropdown for **Generate Template**. Click that dropdown and select **Method Request Passthrough**.\n\n22\\. A \"Template\" text editor window will appear. In this section you will input a piece of VTL transformation logic to convert the incoming Twilio data to JSON format. In this text editor, **delete all of the pre-filled content** and copy the following code into the editor.\n\n```{\"postBody\" : \"$input.path('$')\"}```\n\nAfter copying the code into the editor, click the **Save** button. You have now setup the POST method to convert the incoming data to JSON anytime a POST request is made to your /zombie/twilio resource with a Content-Type of \"application/x-www-form-urlencoded\". This should look like the screenshot below:\n![Twilio Integration Request Mapping Template](/Images/Twilio-Step22.png)\n\n23\\. Now that you have configured the Integration Request to transform incoming messages into JSON, we need to configure the Integration Response to transform outgoing responses back to Twilio into XML format since the Twilio API requires XML as a response Content-Type. This step is required so that when you send SMS messages to the survivor Chat Service, it can respond back to your Twilio Phone Number with a confirmation message that your message was received successfully.\n\n24\\. Head back to the Method Execution screen for the twilio POST method. On the \"Method Execution\" screen for your /zombie/twilio POST method, click **Integration Response**. On the \"Integration Response\" screen, click the black arrow to expand the method response section. Expand the **Body Mapping Templates** section. You should see a Content-Type of \"application/json\". We need a Content-Type of XML, not JSON, so **delete this Content-Type by clicking the little black minus icon** and click **Delete** on the pop-up window.\n\n25\\. Click **Add mapping template** similar to the way you did this in the earlier steps for the Integration Request section.\n\n26\\. In the \"Content-Type\" text box, insert **application/xml** and click the little black checkmark to continue. Similar to the steps done earlier, we are going to copy VTL mapping logic to convert the response data to XML from JSON. This will result in your /zombie/twilio POST method responding to requests with XML format. After you have created the new content-type, a new section will appear below with a dropdown for **Generate Template**. Click that dropdown and select **Method Request Passthrough**.\nIn the text editor, delete all the code already in there and copy the following into the editor:\n\n```\n#set($inputRoot = $input.path('$'))\n<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n<Response>\n    <Message>\n        <Body>\n            $inputRoot\n        </Body>\n    </Message>\n</Response>\n```\n\nClick the grey \"Save\" button to continue.\n\nThe result should look like the screenshot below:\n\n![Twilio Integration Response Mapping Template](/Images/Twilio-Step26.png)\n\n27\\. Scroll up and click the blue **Save** button on the screen. Finally click the **Actions** button on the left side of the API Gateway console and choose **Deploy API** to deploy your API. In the Deploy API window, select **ZombieWorkshopStage** from the dropdown and click **Deploy**.\n\n28\\. You are now ready to test out Twilio integration with your API. Send a text message to your Twilio phone number from your mobile device.\n\n**LAB 2 COMPLETE**\n\nIf the integration was successful, you should receive a confirmation response text message and your text message you sent should display in the web app chat room as coming from your Twilio Phone Number. You have successfully integrated Twilio text message functionality with API Gateway.\n\n* **Troubleshooting tip**: If you are unable to send text messages, please ensure you are sending from the same phone number that you registered when you signed up for a survivor account in the Zombie Chat. If you review the TwilioProcessing Lambda function you will see that the code is checking the DynamoDB users table to confirm if the incoming message forward to us from Twilio was sent from an authorized phone number. Twilio provides that to us when it sends the message to our API.\n\n* **For international users**: If you have an international phone number and want to send text messages -\n  1. Modify your user record in the DynamoDB Users table with your correct International Phone Number. You need to do this in DynamoDB directly, because the JS chat application performs validation that requires a 10 digit US phone number on the client. After modifying this in DynamoDB, you should be able to send text messages to your Twilio phone number from your international phone number because the the Lambda phone number validation in the code will recognize your phone number.\n\n* * *\n\n## Lab 3 - Search over the chat messages with Elasticsearch Service\n\n**What you'll do in this lab...**\n\nIn this lab you'll launch an Elasticsearch Service cluster and setup DynamoDB Streams to automatically index chat messages in Elasticsearch for future ad hoc analysis of messages.\n\n**Elasticsearch Service Architecture**\n![Overview of Elasticsearch Service Integration](/Images/ElasticsearchServiceOverview.png)\n\n1\\. Select the Amazon Elasticsearch icon from the main console page.\n\n2\\. Create a new Amazon Elasticsearch domain. Provide it a name such as \"[Your CloudFormation stack name]-zombiemessages\". Click **Next**.\n\n3\\. On the **Configure Cluster** page, leave the default cluster settings and click **Next**.\n\n4\\. For the access policy, select the **Allow or deny access to one or more AWS accounts or IAM users** option in the dropdown and fill in your account ID. Your AWS Account ID is actually provided to you in the examples section so just copy and paste it into the text box. Make sure **Allow** is selected for the \"Effect\" dropdown option. Click **OK**.\n\n5\\. Select **Next** to go to the domain review page.\n\n6\\. On the Review page, select **Confirm and create** to create your Elasticsearch cluster.\n\n7\\. The creation of the Elasticsearch cluster takes approximately 10 minutes.\n\n* Since it takes roughly 10 minutes to launch an Elasticsearch cluster, you can either wait for this launch before proceeding, or you can move on to Lab 4 and come back to finish this lab when the cluster is ready.\n\n8\\. Take note of the Endpoint once the cluster starts, we'll need that for the Lambda function.\n![API Gateway Invoke URL](/Images/Search-Step8.png)\n\n9\\. Go into the Lambda service page by clicking on Lambda in the Management Console.\n\n10\\. Select **Create a Lambda Function**.\n\n11\\. On the Blueprints screen select **Blank Function** to create a Lambda function from scratch.\n\n12\\. In Configure Triggers section, select the DynamoDB event source type and then select the **messages** DynamoDB table. It should appear as **\"[Your CloudFormation stack name]-messages\"**. Then set the **Batch size** to **5**, the **Starting position** to **Latest** and select the checkbox **Enable trigger**. Then click on Next button.\n\n13\\. Give your function a name, such as **\"[Your CloudFormation stack name]-ESsearch\"**. Keep the runtime at the default. You can set a description for the function if you'd like.\n\n14\\. Paste in the code from the ZombieWorkshopSearchIndexing.js file provided to you. This is found in the Github repo in the \"ElasticsearchLambda\" folder.\n\n15\\. On [line 6](/ElasticSearchLambda/ZombieWorkshopSearchIndexing.js#L6) in the code provided, replace the **region** variable with the code for the region you are working in (the region you launched your stack, created your Lambda function etc). If you're working in Oregon region, then leave the code us-west-2 as is.\n\nThen on line 7, replace the **endpoint** variable that has a value of **ENDPOINT_HERE** with the Elasticsearch endpoint created in step 8\\. **Make sure the endpoint you paste starts with https://**.\n\n* This step requires that your cluster is finished creating and in \"Active\" state before you'll have access to see the endpoint of your cluster.\n\n16\\. Now you'll add an execution role to your Lambda function which gives permissions for your Lambda function to access AWS resources. For the Role, select **Choose an existing role**, and for the Existing Role, select **\"[Your CloudFormation stack name]-ZombieLabLambdaRole\"** which is the role that was created for you for this workshop. It has permissions to the Elasticsearch service.\n\n17\\. Expand the \"Advanced settings\" section and find the \"Timeout\" field for your Lambda function. In the timeout field, change the function timeout to **1** minute. This ensures Lambda can process the batch of messages before Lambda times out. Keep all the other defaults on the page set as is. Select **Next** and then on the Review page, select **Create function** to create your Lambda function.\n\n18\\. In the above step, we configured [DynamoDB Streams](http://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Streams.html) to capture incoming messages on the table and trigger a Lambda function to push them to our Elasticsearch cluster. Your messages posted in the chat from this point forward will be indexed to Elasticsearch. Post a few messages in the chat, at least 5 as configured in the DynamoDB Streams event source (batch size). You should be able to see that messages are being indexed in the \"Indices\" section for your cluster in the Elasticsearch Service console.\n![API Gateway Invoke URL](/Images/Search-Done.png)\n\n**LAB 3 COMPLETE**\n\nIf you would like to explore and search over the messages in the Kibana web UI that is provided with your cluster, you will need to navigate to the Elasticsearch domain you created and change the permissions. Currently you've configured the permissions so that only your AWS account has access. This allows your Lambda function to index messages into the cluster.\n\nTo use the web UI to build charts and search over the index, you will need to implement an IP based policy to whitelist your computer/laptop/network or for simplicity, choose to allow everyone access. For instructions on how to modify the access policy of an ES cluster, visit [this documentation](http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/es-gsg-configure-access.html). If you choose to open access to anyone be aware that anyone can see your messages, so please be sure to restrict access back to your AWS account when you're done exploring Kibana, or simply delete your ES cluster.  \n\n* * *\n\n## Lab 4 - Slack Integration\n\n**What you'll do in this lab...**\n\nIn this lab, you'll integrate a Slack channel with your survivor chat. There may be survivors who use different chat systems and you'll want to communicate with them! After completing this lab, survivors communicating on Slack can send messages to survivors in the Zombie Chat App by configuring a slash command prefix to be used on any messages in their Slack channel that they want to send to the survivors. When Slack users type messages with this Slash command, it will pass the message to your survivor chat API, similiar to the webhook functionality enabled in the Twilio lab!\n\nIf you aren't familiar with Slack, they offer a free chat communications service that is popular, especially among the developer community. Slack uses a concept called \"Channels\" to distinguish different chat rooms. Visit their website to learn more!\n\n**Slack Integration Architecture**\n![Overview of Slack Integration](/Images/SlackOverview.png)\n\n1\\. Go to [http://www.slack.com](http://www.slack.com) and create a username, as well as a team. If you want to use your existing Slack username and existing team, then proceed with that profile instead of creating a new one.\n\n2\\. Once logged into your Slack team, navigate to [https://slack.com/apps](https://slack.com/apps) which should direct you to the app directory for your team. In the search bar in the middle of the App Directory page, type **slash commands** and select it from the options. This will take you to the Slash Commands portal. \n\n3\\. On the Slash Commands page, click **Add configuration**. \n\nSlash commands allow you to define a command that you can use within Slack to trigger  Slack to perform actions in an event driven manner. In this case we are going to configure a slash command to forward messages to an external source with a webhook. You'll configure your Slash Command to make a POST request to a /zombie/slack API resource you will soon be creating in API Gateway. \n\n4\\. On the Slash Commands configuration page, define a command in the **Commands** text box. Insert **/survivors** as your Slash Command. Then select \"Add Slash Command Integration\" to save it.\n\n5\\. On the Integration Settings page, scroll down to the **Method** configuration andmake sure the **Method** section has \"POST\" selected from the dropdown options. Then scroll to the **Token** section and copy the Token (or generate a new one) to a text file as you'll need it in the following steps.\n\n6\\. Keep the Slack browser tab open and in another tab navigate to the AWS Lambda management console in the AWS Management Console.\n\n7\\. Click **Create a Lambda function**. You'll create a Lambda function to parse incoming Slack messages and send them to the Chat Service.\n\n8\\. On the Blueprints page select **Blank Function** to create a function from scratch. Also skip past the triggers page by selecting **Next**.\n\n9\\. Give your function a name such as **\"[Your CloudFormation Stack name]-SlackService\"**. For the Nodejs version, you can keep the default Nodejs version selected. Now navigate to the GitHub repo for this workshop, or the location where you downloaded the GitHub files to your local machine.\n\n10\\. Open the **SlackService.js** file from the GitHub repo, found in the slack folder. Copy the entire contents of this js file into the Lambda inline edit window.\n\n* This SlackService function will serve as the backend for a new /zombie/slack API resource you will create later. This function accepts incoming messages forwarded from Slack when you use the slash command, it then reformats the parameters and proxies the Slack messages to the zombie survivor chat service (/zombi/message) . This Lambda function verifies that the incoming message has the predefined Slack Token, and it also does a DynamoDB query against the Users table to validate that the user who submitted the message in Slack is a preconfigured survivor in our backend (Remember when you signed up for the chat, you provided your Slack username and team domain as part of the sign-up process). In this workshop, we're using this is as the way to authorize requests against the /zombie/slack resource.\n\n11\\. You should have saved the Slack Token string from earlier. Copy the Token string from Slack into the \"token\" variable on [line 15](/Slack/SlackService.js#L15) in the Lambda function, replacing the string **INSERT YOUR TOKEN FROM SLACK HERE** with your own token.\n\n* Slack provides a unique token associated with your integration. You are copying this token into your Lambda function as a form of validation. When incoming requests from Slack are sent to your API endpoint, and your Lambda function is invoked with the Slack payload, your Lambda function will check to verify that the incoming Token in the request matches the Token you provided in the code. If the token does not match, Lambda returns an error and doesn't process the request.\n\n12\\. There are 4 variables you need to insert in the code to communicate with the backend.\n\na) In the \"API\" variable, you will insert the fully qualified domain name (FQDN) for your API. The **API.endpoint** variable should show a value of \"INSERT YOUR API GATEWAY FQDN HERE INCLUDING THE HTTPS://\" on [line 9](/Slack/SlackService.js#L9). Your final FQDN inserted into the code should look something like \"https://xxxxxxxx.execute-api.us-west-2.amazonaws.com\". This allows the SlackService function to communicate with your API.\n\nb) You should also fill in the region code in the variable **API.region**. This should be the region where you launched CloudFormation.\n\nc) Finally you will also copy in the name of your DynamoDB Users table that was created for you. This should be placed in the **table** variable. You will also need to copy in the name of your \"slackindex\" (this is an index that was created on the DynamoDB table to assist with querying). These attributes can be found in the Outputs section in CloudFormation. You should be copying the values for **DynamoDBUsersTableName** and **DynamoDBUsersSlackIndex** from CloudFormation.\n\n13\\. After you have copied the code into the Lambda inline code console and modified the variables, scroll down to the **Lambda function handler and role** section. For the role, select **Choose an existing role** from the dropdown and then select the role that looks like **[Your stack name]-ZombieLabLambdaRole...**. For simplicity we are reusing the same Lambda role for our functions.\n\n14\\. In the Advanced Settings, set the **Timeout** to **30** seconds. Then click **Next**.\n\n15\\. On the review page, make sure that everything looks correct.\n\n16\\. Click **Create function**. Your Lambda function will be created.\n\n17\\. When the function is created, navigate to the API Gateway service in the AWS Management Console. Click into your \"Zombie Workshop API Gateway\" API. On the left Resources pane, click/highlight the \"/zombie\" resource so that it is selected. Then select the **Actions** button and choose \"Create Resource\". For Resource Name, insert **slack** and for Resource Path, insert **slack**. Click \"Create Resource\" to create your slack API resource. The final resource for your Slack API should be as shown below.\n![Create Slack API Resource](/Images/Slack-Step17.png)\n\n*  In this step, you are creating a new API resource that the Slack slash command webhook can forward requests to. In the next steps, you'll create a POST method associated with this resource that triggers your Lambda function. When you type messages in Slack with the correct slash command, Slack will send requests to this resource, which will invoke your SlackService Lambda function to pre-process the payload and make a call to your /zombie/message endpoint to insert the data into DynamoDB.\n\n18\\. For your newly created \"/slack\" resource, highlight it, then click **Actions** and select **Create Method** to create the **POST** method for the /zombie/slack resource. In the dropdown, select **POST**. Click the checkmark to create the POST method. On the Setup page, choose an Integration Type of **Lambda Function**, and select the region that you are working in for the region dropdown. For the Lambda Function field, type \"SlackService\" for the name of the Lambda Function. It should autofill your function name. Click **Save** and then **OK** to confirm.\n\n19\\. Click **Integration Request** for the /slack POST method. We'll create a Mapping Template to convert the incoming query string parameters from Slack into JSON which is the format Lambda requires for parameters. This mapping template is required so that the incoming Slack message can be converted to the right format.\n\n20\\. Expand the **Body Mapping Templates** arrow and click **Add mapping template**. In the Content-Type box, enter **application/x-www-form-urlencoded** and click the little checkmark to continue. If a popup appears asking if you would like to secure the integration, click **Yes, secure this integration**. This ensures that only requests with the defined content-types will be allowed.\n\nAs you did in the Twilio lab, we're going to copy VTL mapping logic to convert the request to JSON. A new section will appear on the right side of the screen with a dropdown for **Generate Template**. Click that dropdown and select **Method Request Passthrough**.\n\nIn the text editor, delete all of the exiting VTL code and copy the following into the editor:\n\n```\n{\"body\": $input.json(\"$\")}\n```\n\nClick the grey **Save** button to continue. The result should look like the screenshot below:\n\n![Slack Integration Response Mapping Template](/Images/Slack-Step20.png)\n\n21\\. Click the **Actions** button on the left side of the API Gateway console and select **Deploy API** to deploy your API. In the Deploy API window, select **ZombieWorkshopStage** from the dropdown and click **Deploy**.\n\n22\\. On the left pane navigation tree, expand the ZombieWorkshopStage tree. Click the **POST** method for the **/zombie/slack** resource. You should see an Invoke URL appear for that resource as shown below.\n![Slack Resource Invoke URL](/Images/Slack-Step22.png)\n\n23\\. Copy the entire Invoke URL. Navigate back to the Slack.com website to the Slash Command setup page and insert the Slack API Gateway Invoke URL you just copied into the \"URL\" textbox. Make sure to copy the entire url including \"HTTPS://\". Scroll to the bottom of the Slash Command screen and click **Save Integration**.\n\n24\\. You're ready to test out the Slash Command integration. In the team chat channel for your Slack account, type the Slash Command \"/survivors\" followed by a message. For example, type \"/survivors Please help me I am stuck and zombies are trying to get me!\". After sending it, you should get a confirmation response message from Slack Bot like the one below:\n![Slack Command Success](/Images/Slack-Step24.png)\n\n**LAB 4 COMPLETE**\n\nNavigate to your zombie survivor chat app and you should see the message from Slack appear. You have configured Slack to send messages to your chat app!\n![Slack Command in Chat App](/Images/Slack-Step25.png)\n\n**Bonus Step:**\n\nYou've configured Slack to forward messages to your zombie survivor chat app. But can you get messages sent in the chat app to appear in your Slack chat (i.e.: the reverse)? Give it a try or come back and attempt it later when you've finished the rest of the labs! HINT: You'll want to configure Slack's \"Incoming Webhooks\" integration feature along with a Lambda code configuration change to make POST requests to the Slack Webhook whenever users send messages in the chat app!\n\n* * *\n\n## Lab 5 - Motion Sensor Integration with Intel Edison and Grove\n\nIn this section, you'll help protect suvivors from zombies. Zombie motion sensor devices allow communities to determine if zombies (or intruders) are nearby. You'll setup a Lambda function to consume motion sensor events from an IoT device and push the messages into your chat application.\n\n**IoT Integration Architecture**\n![Zombie Sensor IoT Integration](/Images/EdisonOverview.png)\n\nIf you wish to utilize the Zombie Sensor as a part of the workshop, this guide will walk you through the following:\n\n* Items required to create the physical Zombie sensor (Ignore this step if a zombie sensor is provided as a part of an AWS workshop)\n* How to create the AWS backend (Simple Notification Service Topic) for the Zombie Sensor  \n* How to install the Node.js device code provided in this workshop onto the device\n\n**Please note that this section requires an IoT device that can emit messages to SNS. If you are setting this up on your own device outside of the workshop, please proceed through the sections below to do that, otherwise skip the device setup instructions as the device has been setup by AWS for you by the workshop instructor.**\n\n**Items Required**\n\n1\\. One Intel® Edison and Grove IoT Starter Kit Powered by AWS. This can be purchased [here](http://www.amazon.com/gp/product/B0168KU5FK?*Version*=1&*entries*=0).  \n2\\. Within this starter kit you will be using the following components for this exercise:  \n\n* Intel® Edison for Arduino  \n* Base Shield  \n* USB Cable; 480mm-Black x1  \n* USB Wall Power Supply x1  \n* Grove - PIR Motion Sensor: The application code is a very simple app that publishes a message to an Amazon Simple Notification Service (SNS) topic when motion is detected on the Grove PIR Motion Sensor. For the purpose of a workshop, this should be done only once in a central account by the workshop organizer - the SNS topic will be made public so that participants can subscribe to this topic and make use of it during the workshop.\n\nAn example output message from the Intel Edison:\n\n``` {\"message\":\"A Zombie has been detected in London!\", \"value\":\"1\", \"city\":\"London\", \"longtitude\":\"-0.127758\", \"lattitude\":\"51.507351\"} ```\n\nA simple workflow of this architecture is:\n\nIntel Edison -> SNS topic -> Your AWS Lambda functions subscribed to the topic.\n\n####Creating the AWS Backend\n\n**If you are following this guide during a workshop presented by AWS, please ignore the steps below, 1-3\\. An SNS topic should already be configured for the workshop participants to consume messages from. That SNS topic ARN will be provided to you.**\n\n1\\. Create the SNS Topic. Navigate to the SNS product page within the AWS Management Console and click **Topics** in the left hand menu. Then click on 'Create New Topic'. You will be presented with the following window. Fill in the fields with your desired values and click create topic.\n![Create Topic Screenshot](/Images/MotionSensor-createTopic.png)\n\n2\\. You will now need to edit the topic policy to permit any AWS account to subscribe lambda functions to your SNS topic. Select the check box next to your new topic, and then click **Actions -> Edit topic policy**. You need to configure these settings presented as shown the below screenshot. Then click **Update Policy**. This part is what allows others (perhaps teammates working on this lab with you, to consume notifications from your SNS topic.\n![Edit Topic Policy Screenshot](/Images/MotionSensor-createTopicPolicy.png)\n\n3\\. You now have your central SNS topic configured and ready to use. Ensure that you make a note of the Topic ARN and region where you have created the topic, you will need it in some of the following steps.\n\n####Installing the application on the Intel Edison\n**If you are following this guide during a workshop presented by AWS, please ignore this section. An Intel Edison board should already be configured for the workshop particants to consume messages from.**\n\n1\\. First, you will need to get your Edison board set up. You can find a getting started guide for this on the Intel site [here](https://software.intel.com/en-us/articles/assemble-intel-edison-on-the-arduino-board). Note that for the purpose of this tutorial, we will be writing our client code for the Edison in Node.js and will therefore be using the Intel® XDK for IoT (referred to as 'XDK' from here on, and which you will need to install) as our IDE.\n\n2\\. You will need to physically connect the Grove PIR Motion Sensor to pin D6 on the breakout board.\n\n3\\. Download all of the code from the 'zombieIntelEdisonCode' folder in the GitHub repository and store it in a folder locally on your machine. This simply consists of a main.js file (our application) and our package.json (our app dependencies).\n\n4\\. Navigate to the homepage in the XDK and start a new project.\n\n5\\. Choose to import an existing Node.js project and select the folder where you stored the code from this repository in the previous step.\n\n6\\. Give your project a name. We called ours **zombieSensor**.\n\n7\\. You now need to edit the code in main.js to include your AWS credentials and the SNS topic that you have created. Firstly, we'll need some AWS credentials.\n\n8\\. You will need to create an IAM User with Access and Secret Access Keys for your Edison to publish messages to your SNS topic. There is a guide on how to create IAM Users [here](http://docs.aws.amazon.com/IAM/latest/UserGuide/id_users_create.html). Your IAM policy for the user should look like the following:\n\n```\n{\n    \"Version\": \"2012-10-17\",\n    \"Statement\": [{\n        \"Action\": [ \"sns:Publish\" ],\n        \"Effect\": \"Allow\",\n        \"Resource\": \"ENTER YOUR SNS TOPIC ARN HERE\"\n    }]\n}\n```\n\n9\\. Now let's add your credentials to the client side code. Edit the following line in main.js to include your user access keys and the region where you have set up your SNS topic.\n\n``` AWS.config.update({accessKeyId: 'ENTER ACCESSKEY HERE', secretAccessKey: 'ENTER SECRET ACCESS KEY HERE', region: 'ENTER REGION HERE'}); ```\n\n10\\. Edit the following line in main.js to reflect the region in which you created the SNS topic.\n\n``` var sns = new AWS.SNS({region: 'ENTER REGION HERE'}); ```\n\n11\\. Edit the following line in main.js to reflect the Amazon Resource Name (ARN) of the SNS topic that you created earlier.\n\n``` TopicArn: \"ENTER YOUR SNS TOPIC ARN HERE\" ```\n\n12\\. You now need to connect the XDK to your Intel Edison device. There is a guide on the Intel site on how to do this [here](https://software.intel.com/en-us/getting-started-with-the-intel-xdk-iot-edition) under the 'Connect to your Intel® IoT Platform' section.\n\n13\\. You now need to build the app and push it to your device. First, hit the build/install icon, this looks like a hammer in the XDK. It may take a couple of minutes to install the required packages etc.\n\n14\\. Once the app has been built succesfully, you can run the app by pressing the run icon, this looks like a circuit board with a green 'play' sign.\n\n15\\. Your app should now be running on the Edison device and your messages being published to the SNS topic. You can consume these messages using AWS Lambda. There is some documentation to get you started [here](http://docs.aws.amazon.com/sns/latest/dg/sns-lambda.html). Continue below to learn how to integrate the SNS notifications into the chat application.\n\n####Consuming the SNS Topic Messages with AWS Lambda\n\nUsing the things learned in this workshop, can you develop a Lambda function that alerts survivors in the chat application when zombies are detected from the zombie sensor? In this section you will configure a Lambda function that triggers when messages are sent from the Edison device to the zombie sensor SNS topic. This function will push the messages to the chat application to notify survivors of zombies!\n\n1\\. Open up the Lambda console and click **Create a Lambda function**.\n\n2\\. On the blueprints screen, click **Skip** as we won't use one.\n\n3\\. On the next page (**Configure Triggers**), click the empty field next to the AWS Lambda logo and select SNS as an event source.\n\n![Setup SNS as an Event Trigger for Lambda](/Images/Sensor-Step3.png)\n\n* For the SNS topic selection, either select the SNS topic from the dropdown you created earlier (if you're working on this outside of an AWS workshop) or if you are working in an AWS workshop, insert the shared SNS topic ARN provided to you by the organizer. Make sure the trigger checkbox option is set to enabled so that your Lambda function will immediately begin processing messages. Click **Next**.\n\n* The SNS Topic ARN provided by AWS (if in a workshop) is not in your AWS account and will not display in your dropdown of choices. It is an ARN provided by AWS in a separate account and needs to be typed in.\n\n4\\. On the \"Configure Function\" screen, name your function \"[Your CloudFormation Stack Name]-sensor\". Now open the **exampleSNSFunction.js** file from the workshop GitHub repository. It is located [here](/zombieSensor/lambda/exampleSNSFunction.js). Copy the entire contents of this JS file into the empty Lambda code editor.\n\nWhen you've copied the code into the Lambda browser editor, locate the variable **API**. Replace the variable **API.endpoint** with your /zombie/message/post endpoint. It should look like **https://xxxxxxxx.execute-api.us-west-2.amazonaws.com**. This is the \"Invoke URL\" which you can grab from the Stages page in the API Gateway console. Remember, don't insert anything after the \".com\" portion, the function fills in the rest of the resource path for you. You also should insert the region for your API in the **API.region** variable.\n\n5\\. For the **Role**, leave the option as **Choose an existing role**. Then in the \"Existing Role\" dropdown, select the ZombieLabLambdaRole that was created for you by CloudFormation. It should look like \"[Your CloudFormation stack name]-ZombieLabLambdaRole\".\n\n6\\. Set the **Timeout** to **30** seconds. Leave all other options as default on the Lambda creation page and click **Next**.\n\n7\\. On the Review page, click **Create function**.\n\n8\\. That's it! When your function is created, head on over to your survivor chat application. If your session has expired you may need to login again.\n\n* Almost immediately you should begin seeing zombie sensor messages showing up in the chat application which means your messages are successfully sending from the Intel Edison device to the Zombie Sensor SNS Topic. Any survivors with Lambda functions subscribed to this topic will get notifications in their team's survivor chat service.  \n\n* This Lambda Function takes the zombie sensor message from SNS, parses it, and makes an AWS SigV4 signed HTTPS POST request to your API Gateway message endpoint. That endpoint inserts the record into DynamoDB as a message making it available to the application on subsequent poll requests.\n\n## Workshop Cleanup\n\n1\\. To cleanup your environment, it is recommended to first delete these manual resources you created in the labs before deleting your CloudFormation stack, as there may be resource dependencies that stop the Stack from deleting. Follow steps 2-6 before deleting your Stack.\n\n2\\. Be sure to delete the TwilioProcessing Lambda Function. Also if you no longer plan to use Twilio, please delete your Twilio free trial account and/or phone numbers that you provisioned.\n\n3\\. Be sure to delete the Elasticsearch cluster and the associated Lambda function that you created for the Elasticsearch lab. Also delete the IAM role you created for the Elasicsearch Lambda function, \"ZombieLabLambdaDynamoESRole\".\n\n4\\. Be sure to delete the Lambda function created as a part of the Slack lab and the Slack API resource you created. Also delete Slack if you no longer want an account with them.\n\n5\\. Be sure to delete the SNS topic (if you created one) and the Lambda function that you created in the Zombie Sensor lab.\n\n6\\. Delete the Cognito User Pool and Identity Pool associated with your application, that you created during lab setup.\n\n* User Pool: Click into your User Pool and click the \"Delete pool\" button to delete your user pool.\n\n* Identity Pool: Click into the Federated Identities page of Cognito and find your identity pool ([stackname]-identitypool). Then click **Edit identity pool**. Scroll to the bottom and delete the identity pool.\n\n7\\. Navigate to CloudWatch Logs and make sure to delete unnecessary Log Groups if they exist.   \n\n8\\. Once those resources have been deleted, go to the CloudFormation console and find the Stack that you launched in the beginning of the workshop, select it, and click **Delete Stack**.\n\n* When the stack has been successfully deleted, it should no longer display in the list of Active stacks. If you run into any issues deleting stacks, please notify a workshop instructor or contact [AWS Support](https://console.aws.amazon.com/support/home) for additional assistance.\n\n* * *\n\n## Appendix\n\n* Channel Challenge: Currently all messages sent in the survivor app are saved in the database with a channel of 'default' - all survivors can see these messages. Your challenge is to modify the application so that users have the option to scope their messages to only display to survivors in the same \"Camp\" (Camp is an attribute that is collected from users when they sign up for a user account). You will need to modify the JS application as well as the backend messages database and Lambda functions to work with this \"Camp\" attribute instead of the existing 'channel' attribute.\n"
  },
  {
    "path": "S3WebApp/S3/app.js",
    "content": "var app = angular.module(\"chatApp\",\n    ['ui.router',\n    'ngResource',\n    'ngMessages',\n    'chatApp.signin',\n    'chatApp.signup',\n    'chatApp.confirm',\n    'chatApp.chat',\n    'chatApp.chatPanel',\n    'chatApp.talkersPanel',\n    'chatApp.chatMessages']\n);\n\napp.config(function($stateProvider, $urlRouterProvider) {\n\n    AWSCognito.config.region = COGNITO_REGION;\n    AWSCognito.config.credentials = new AWS.CognitoIdentityCredentials({\n        IdentityPoolId: IDENTITY_POOL_ID\n    });\n    AWSCognito.config.update({accessKeyId: 'anything', secretAccessKey: 'anything'})\n\n    var creds = new AWS.CognitoIdentityCredentials({\n        IdentityPoolId: IDENTITY_POOL_ID\n    });\n    AWS.config.region = COGNITO_REGION;\n    AWS.config.credentials = creds;\n\n    $stateProvider\n\n    .state('signin', {\n        url: '/signin',\n        views: {\n            '' : {\n                templateUrl: 'modules/signin/signin.html',\n                controller: 'SigninCtrl'\n            }\n        }\n    })\n\n    .state('signup', {\n        url: '/signup',\n        views: {\n            '' : {\n                templateUrl: 'modules/signup/signup.html',\n                controller: 'SignupCtrl'\n            }\n        }\n    })\n\n    .state('confirm', {\n        url: '/confirm',\n        views: {\n            '' : {\n                templateUrl: 'modules/confirm/confirm.html',\n                controller: 'ConfirmCtrl'\n            }\n        }\n    })\n\n    .state('chat', {\n        url: '/chat',\n        views: {\n            '' : {\n                templateUrl: 'modules/chat/chat.html',\n                controller: 'ChatCtrl'\n            },\n            'chatPanel@chat' : {\n                templateUrl: 'modules/chat/chatPanel.html',\n                controller: 'chatPanelCtrl'\n            },\n            'talkersPanel@chat' : {\n                templateUrl: 'modules/chat/talkersPanel.html',\n                controller: 'talkersPanelCtrl'\n            },\n            'chatMessages@chat' : {\n                templateUrl: 'modules/chat/chatMessages.html',\n                controller: 'chatMessageCtrl'\n            }\n        }\n    });\n\n    $urlRouterProvider.otherwise('/signin');\n\n});\n\nvar apigClientFactory = {};\napigClientFactory.newClient = function (config) {\n    var apigClient = { };\n    if(config === undefined) {\n        config = {\n            accessKey: '',\n            secretKey: '',\n            sessionToken: '',\n            region: '',\n            apiKey: undefined,\n            defaultContentType: 'application/json; charset=UTF-8',\n            defaultAcceptType: 'application/json; charset=UTF-8'\n        };\n    }\n    if(config.accessKey === undefined) {\n        config.accessKey = '';\n    }\n    if(config.secretKey === undefined) {\n        config.secretKey = '';\n    }\n    if(config.apiKey === undefined) {\n        config.apiKey = '';\n    }\n    if(config.sessionToken === undefined) {\n        config.sessionToken = '';\n    }\n    if(config.region === undefined) {\n        config.region = AWS_REGION;\n    }\n    //If defaultContentType is not defined then default to application/json\n    if(config.defaultContentType === undefined) {\n        config.defaultContentType = 'application/json; charset=UTF-8';\n    }\n    //If defaultAcceptType is not defined then default to application/json\n    if(config.defaultAcceptType === undefined) {\n        config.defaultAcceptType = 'application/json; charset=UTF-8';\n    }\n\n    \n    // extract endpoint and path from url\n    var invokeUrl = MESSAGES_ENDPOINT;\n    var endpoint = /(^https?:\\/\\/[^\\/]+)/g.exec(invokeUrl)[1];\n    var pathComponent = invokeUrl.substring(endpoint.length);\n    \n    var sigV4ClientConfig = {\n        accessKey: config.accessKey,\n        secretKey: config.secretKey,\n        sessionToken: config.sessionToken,\n        serviceName: 'execute-api',\n        region: config.region,\n        endpoint: endpoint,\n        defaultContentType: config.defaultContentType,\n        defaultAcceptType: config.defaultAcceptType\n    };\n\n    var authType = 'NONE';\n    if (sigV4ClientConfig.accessKey !== undefined && sigV4ClientConfig.accessKey !== '' && sigV4ClientConfig.secretKey !== undefined && sigV4ClientConfig.secretKey !== '') {\n        authType = 'AWS_IAM';\n    }\n\n    var simpleHttpClientConfig = {\n        endpoint: endpoint,\n        defaultContentType: config.defaultContentType,\n        defaultAcceptType: config.defaultAcceptType\n    };\n\n    var apiGatewayClient = apiGateway.core.apiGatewayClientFactory.newClient(simpleHttpClientConfig, sigV4ClientConfig);\n    \n    \n    \n    apigClient.zombieMessageGet = function (params, body, additionalParams) {\n        if(additionalParams === undefined) { additionalParams = {}; }\n        \n        apiGateway.core.utils.assertParametersDefined(params, [], ['body']);\n        \n        var zombieMessageGetRequest = {\n            verb: 'get'.toUpperCase(),\n            path: pathComponent + uritemplate('/zombie/message').expand(apiGateway.core.utils.parseParametersToObject(params, [])),\n            headers: apiGateway.core.utils.parseParametersToObject(params, []),\n            queryParams: apiGateway.core.utils.parseParametersToObject(params, []),\n            body: body\n        };\n        \n        \n        return apiGatewayClient.makeRequest(zombieMessageGetRequest, authType, additionalParams, config.apiKey);\n    };\n    \n    \n    apigClient.zombieMessagePost = function (params, body, additionalParams) {\n        if(additionalParams === undefined) { additionalParams = {}; }\n        \n        apiGateway.core.utils.assertParametersDefined(params, [], ['body']);\n        \n        var zombieMessagePostRequest = {\n            verb: 'post'.toUpperCase(),\n            path: pathComponent + uritemplate('/zombie/message').expand(apiGateway.core.utils.parseParametersToObject(params, [])),\n            headers: apiGateway.core.utils.parseParametersToObject(params, []),\n            queryParams: apiGateway.core.utils.parseParametersToObject(params, []),\n            body: body\n        };\n        \n        \n        return apiGatewayClient.makeRequest(zombieMessagePostRequest, authType, additionalParams, config.apiKey);\n    };\n    \n    \n    apigClient.zombieMessageOptions = function (params, body, additionalParams) {\n        if(additionalParams === undefined) { additionalParams = {}; }\n        \n        apiGateway.core.utils.assertParametersDefined(params, [], ['body']);\n        \n        var zombieMessageOptionsRequest = {\n            verb: 'options'.toUpperCase(),\n            path: pathComponent + uritemplate('/zombie/message').expand(apiGateway.core.utils.parseParametersToObject(params, [])),\n            headers: apiGateway.core.utils.parseParametersToObject(params, []),\n            queryParams: apiGateway.core.utils.parseParametersToObject(params, []),\n            body: body\n        };\n        \n        \n        return apiGatewayClient.makeRequest(zombieMessageOptionsRequest, authType, additionalParams, config.apiKey);\n    };\n    \n    \n    apigClient.zombieTalkersGet = function (params, body, additionalParams) {\n        if(additionalParams === undefined) { additionalParams = {}; }\n        \n        apiGateway.core.utils.assertParametersDefined(params, [], ['body']);\n        \n        var zombieTalkersGetRequest = {\n            verb: 'get'.toUpperCase(),\n            path: pathComponent + uritemplate('/zombie/talkers').expand(apiGateway.core.utils.parseParametersToObject(params, [])),\n            headers: apiGateway.core.utils.parseParametersToObject(params, []),\n            queryParams: apiGateway.core.utils.parseParametersToObject(params, []),\n            body: body\n        };\n        \n        \n        return apiGatewayClient.makeRequest(zombieTalkersGetRequest, authType, additionalParams, config.apiKey);\n    };\n    \n    \n    apigClient.zombieTalkersPost = function (params, body, additionalParams) {\n        if(additionalParams === undefined) { additionalParams = {}; }\n        \n        apiGateway.core.utils.assertParametersDefined(params, [], ['body']);\n        \n        var zombieTalkersPostRequest = {\n            verb: 'post'.toUpperCase(),\n            path: pathComponent + uritemplate('/zombie/talkers').expand(apiGateway.core.utils.parseParametersToObject(params, [])),\n            headers: apiGateway.core.utils.parseParametersToObject(params, []),\n            queryParams: apiGateway.core.utils.parseParametersToObject(params, []),\n            body: body\n        };\n        \n        \n        return apiGatewayClient.makeRequest(zombieTalkersPostRequest, authType, additionalParams, config.apiKey);\n    };\n    \n    \n    apigClient.zombieTalkersOptions = function (params, body, additionalParams) {\n        if(additionalParams === undefined) { additionalParams = {}; }\n        \n        apiGateway.core.utils.assertParametersDefined(params, [], ['body']);\n        \n        var zombieTalkersOptionsRequest = {\n            verb: 'options'.toUpperCase(),\n            path: pathComponent + uritemplate('/zombie/talkers').expand(apiGateway.core.utils.parseParametersToObject(params, [])),\n            headers: apiGateway.core.utils.parseParametersToObject(params, []),\n            queryParams: apiGateway.core.utils.parseParametersToObject(params, []),\n            body: body\n        };\n        \n        \n        return apiGatewayClient.makeRequest(zombieTalkersOptionsRequest, authType, additionalParams, config.apiKey);\n    };\n    \n    /*\n    apigClient.zombieTwilioPost = function (params, body, additionalParams) {\n        if(additionalParams === undefined) { additionalParams = {}; }\n        \n        apiGateway.core.utils.assertParametersDefined(params, [], ['body']);\n        \n        var zombieTwilioPostRequest = {\n            verb: 'post'.toUpperCase(),\n            path: pathComponent + uritemplate('/zombie/twilio').expand(apiGateway.core.utils.parseParametersToObject(params, [])),\n            headers: apiGateway.core.utils.parseParametersToObject(params, []),\n            queryParams: apiGateway.core.utils.parseParametersToObject(params, []),\n            body: body\n        };\n        \n        \n        return apiGatewayClient.makeRequest(zombieTwilioPostRequest, authType, additionalParams, config.apiKey);\n    };\n    */\n    \n\n    return apigClient;\n};\n\n\n\n\n\nvar compareTo = function() {\n    return {\n        require: \"ngModel\",\n        scope: {\n            otherModelValue: \"=compareTo\"\n        },\n        link: function(scope, element, attributes, ngModel) {\n\n            ngModel.$validators.compareTo = function(modelValue) {\n                return modelValue == scope.otherModelValue;\n            };\n\n            scope.$watch(\"otherModelValue\", function() {\n                ngModel.$validate();\n            });\n        }\n    };\n};\n\napp.directive(\"compareTo\", compareTo);\n"
  },
  {
    "path": "S3WebApp/S3/assets/css/zombie.css",
    "content": "\nbody{\n    width:100%;\n    height:100%;\n    position:static;\n    background-repeat: no-repeat;\n      background: black;\n    font-family: 'Roboto', sans-serif;\n    color:gray;\n    /*min-width:895px;*/\n}\n\nhtml {\n  position: relative;\n  min-height: 100%;\n  background: black;\n  overflow-y: scroll;\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n  color: #f1f2f7;\n  font-family: 'Roboto', sans-serif;\n  margin: 10px 0;\n  font-weight: 300;\n}\nh1 {\n  line-height: 48px;\n  font-size: 36px;\n}\nh2 {\n  line-height: 36px;\n  font-size: 24px;\n}\nh3 {\n  line-height: 30px;\n  font-size: 21px;\n}\nh4 {\n  line-height: 22px;\n  font-size: 18px;\n}\nh5 {\n  font-size: 18px;\n  font-size: 16px;\n}\nh5 {\n  font-size: 16px;\n  font-size: 14px;\n}\nblockquote {\n  border-left: 5px solid #13dafe !important;\n  border: 1px solid rgba(120, 130, 140, 0.13);\n}\np {\n  line-height: 1.6;\n}\nb {\n  font-weight: 600;\n}\na:hover {\n  outline: 0;\n  text-decoration: none;\n}\na:active {\n  outline: 0;\n  text-decoration: none;\n}\na:focus {\n  outline: 0;\n  text-decoration: none;\n}\n.clear {\n  clear: both;\n}\n.font-12 {\n  font-size: 12px;\n}\nhr {\n  border-color: rgba(120, 130, 140, 0.13);\n}\n.b-t {\n  border-top: 1px solid rgba(120, 130, 140, 0.13);\n}\n.b-b {\n  border-bottom: 1px solid rgba(120, 130, 140, 0.13);\n}\n.b-l {\n  border-left: 1px solid rgba(120, 130, 140, 0.13);\n}\n.b-r {\n  border-right: 1px solid rgba(120, 130, 140, 0.13);\n}\n.b-all {\n  border: 1px solid rgba(120, 130, 140, 0.13);\n}\n.b-none {\n  border: 0px!important;\n}\n.max-height {\n  height: 310px;\n  overflow: auto;\n}\n.p-0 {\n  padding: 0px !important;\n}\n.p-10 {\n  padding: 10px !important;\n}\n.p-20 {\n  padding: 20px !important;\n}\n.p-30 {\n  padding: 30px !important;\n}\n.p-l-0 {\n  padding-left: 0px !important;\n}\n.p-l-10 {\n  padding-left: 10px !important;\n}\n.p-l-20 {\n  padding-left: 20px !important;\n}\n.p-r-0 {\n  padding-right: 0px !important;\n}\n.p-r-10 {\n  padding-right: 10px !important;\n}\n.p-r-20 {\n  padding-right: 20px !important;\n}\n.p-t-0 {\n  padding-top: 0px !important;\n}\n.p-t-10 {\n  padding-top: 10px !important;\n}\n.p-t-20 {\n  padding-top: 20px !important;\n}\n.p-b-0 {\n  padding-bottom: 0px !important;\n}\n.p-b-10 {\n  padding-bottom: 10px !important;\n}\n.p-b-20 {\n  padding-bottom: 20px !important;\n}\n.m-0 {\n  margin: 0px !important;\n}\n.m-l-5 {\n  margin-left: 5px !important;\n}\n.m-l-10 {\n  margin-left: 10px !important;\n}\n.m-l-15 {\n  margin-left: 15px !important;\n}\n.m-l-20 {\n  margin-left: 20px !important;\n}\n.m-l-30 {\n  margin-left: 30px !important;\n}\n.m-l-40 {\n  margin-left: 40px !important;\n}\n.m-r-5 {\n  margin-right: 5px !important;\n}\n.m-r-10 {\n  margin-right: 10px !important;\n}\n.m-r-15 {\n  margin-right: 15px !important;\n}\n.m-r-20 {\n  margin-right: 20px !important;\n}\n.m-r-30 {\n  margin-right: 30px !important;\n}\n.m-r-40 {\n  margin-right: 40px !important;\n}\n.m-t-5 {\n  margin-top: 5px !important;\n}\n.m-t-0 {\n  margin-top: 0px !important;\n}\n.m-t-10 {\n  margin-top: 10px !important;\n}\n.m-t-15 {\n  margin-top: 15px !important;\n}\n.m-t-20 {\n  margin-top: 20px !important;\n}\n.m-t-30 {\n  margin-top: 30px !important;\n}\n.m-t-40 {\n  margin-top: 40px !important;\n}\n.m-b-0 {\n  margin-bottom: 0px !important;\n}\n.m-b-5 {\n  margin-bottom: 5px !important;\n}\n.m-b-10 {\n  margin-bottom: 10px !important;\n}\n.m-b-15 {\n  margin-bottom: 15px !important;\n}\n.m-b-20 {\n  margin-bottom: 20px !important;\n}\n.m-b-30 {\n  margin-bottom: 30px !important;\n}\n.m-b-40 {\n  margin-bottom: 40px !important;\n}\n\n#square {\n    position:absolute;\n    z-index:-1;\n    width:100%;\n    background-color:black;\n    height:80px;\n}\n\n#zombie-logo {\n    float:left;\n    padding-top:4px;\n}\n\n#main-header {\n    text-align:left;\n    color:black;\n    font-size: 2.6em;\n    padding-top:12px;\n    display:inline;\n    width:60%;\n    float:left;\n}\n\n#logo {\n    padding-top:15px;\n    padding-right:10%;\n    float:right;\n}\n\n#wrapper {\n    padding-left: 3em;\n    padding-right:3em;\n}\n\n#chat-toggle{\n    border:none;\n    background-color:rgb(102,0,0);\n    color:white;\n    display:inline;\n}\n\n\n#chat-body {\n    overflow-y: scroll;\n    height:400px;\n    background-color:#2a2a2a;\n    border-style:solid;\n    border-width: 1px;\n    border-color:#414141;\n\n}\n\n#talkers-body {\n  font-family: 'Roboto', sans-serif;\n}\n\n#name-input {\n    background-color:#2a2a2a;\n    border-style:solid;\n    border-width: 1px;\n    border-color:#414141;\n}\n\np {display:inline;}\n\n#username {\n    float:none;\n    clear:both;\n    padding-top:3em;\n    padding-left:1em;\n    padding-right:1em;\n    padding-bottom:1.5em;\n}\n\n/*.form-group { padding: 1em;}*/\n\n.panel-footer {\n    background-color:transparent;\n}\n\n#chat-message-input {\n    background-color:#2a2a2a;\n    border-style:solid;\n    border-width: 1px;\n    border-color:#414141;\n}\n\n#chat-message-input::-webkit-input-placeholder {\n    font-style:italic;\n}\n\n::-webkit-scrollbar {\n  background-color:#2a2a2a;\n}\n\n#name-input::-webkit-input-placeholder {\n    font-style:italic;\n}\n\n.mainLoginInput:-moz-placeholder {\n     font-style:italic;\n}\n\ninput::-webkit-input-placeholder {\n  background-color:#272727;\n}\n\n/* signin and signup */\n#wrapper {\n    width: 100%;\n    height:100%;\n}\n\n.login-register {\n    background: transparent url(\"../images/signalcorps.png\") no-repeat scroll;\n    /* transparent url(\"../images/zombie-login.jpg\") no-repeat scroll center center / cover !important; */\n    height: 100%;\n    float: left;\n}\n\n.login-signin {\n    background: transparent url(\"../images/signalcorps.png\") no-repeat scroll;\n    /* background: transparent url(\"../images/title.png\") no-repeat scroll; */\n    height: 100%;\n    float: left;\n}\n\n.login-box {\n    height: 100%;\n    background: black none repeat scroll 0% 0%;\n    float: right;\n    width: 420px;\n}\n\n.white-box {\n    background: black none repeat scroll 0% 0%;\n    padding: 15px;\n    margin-bottom: 20px;\n}\n\n.white-box h3 {\n    margin: 0px 0px 12px;\n    font-weight: 500;\n}\n\n.login-box .footer {\n    width: 100%;\n    left: 0px;\n    right: 0px;\n}\n.footer {\n    background: black none repeat scroll 0% 0%;\n    color: #58666E;\n    left: 0px;\n    padding: 20px 30px;\n    position: absolute;\n    right: 0px;\n}\n\n.form-control {\n  background-color: #272727;\n  height: 38px;\n  max-width: 100%;\n  padding: 7px 12px;\n  color: #f1f2f7;\n  transition: all 300ms linear 0s;\n}\n\n.help-block {\n    margin-bottom: 0px;\n}\n\n/*Phone*/\n@media (max-width: 767px) {\n    .login-box {\n        max-width: 420px;\n        width: 100%;\n    }\n}\n"
  },
  {
    "path": "S3WebApp/S3/assets/js/aws-cognito-sdk.js",
    "content": "\n\n\n\n<!DOCTYPE html>\n<html lang=\"en\" class=\" emoji-size-boost\">\n  <head prefix=\"og: http://ogp.me/ns# fb: http://ogp.me/ns/fb# object: http://ogp.me/ns/object# article: http://ogp.me/ns/article# profile: http://ogp.me/ns/profile#\">\n    <meta charset='utf-8'>\n\n    <link crossorigin=\"anonymous\" href=\"https://assets-cdn.github.com/assets/frameworks-827a4e004aa05724993ea7616e4af53894825443811a270e2b9bce76e3453f19.css\" media=\"all\" rel=\"stylesheet\" />\n    <link crossorigin=\"anonymous\" href=\"https://assets-cdn.github.com/assets/github-d0137bb035972d0a6583333fcff984ae8c589fcc7918cbcf8a7609a99d3164c2.css\" media=\"all\" rel=\"stylesheet\" />\n    \n    \n    <link crossorigin=\"anonymous\" href=\"https://assets-cdn.github.com/assets/site-0996ced1a40a04be84d932b2c830830a2c87259cfb5c41c90ca7fee0c5979e9d.css\" media=\"all\" rel=\"stylesheet\" />\n    \n\n    <link as=\"script\" href=\"https://assets-cdn.github.com/assets/frameworks-1ffc10688b30831d5f8d09b06e5ea8b731b0dc0ba292c70a826422ae9609179d.js\" rel=\"preload\" />\n    \n    <link as=\"script\" href=\"https://assets-cdn.github.com/assets/github-c17cb240d3c998bc3fc8b12345393f909bda414e57fa6c61ae90d1700422b564.js\" rel=\"preload\" />\n\n    <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\">\n    <meta http-equiv=\"Content-Language\" content=\"en\">\n    <meta name=\"viewport\" content=\"width=device-width\">\n    \n    \n    <title>amazon-cognito-identity-js/aws-cognito-sdk.js at master · aws/amazon-cognito-identity-js · GitHub</title>\n    <link rel=\"search\" type=\"application/opensearchdescription+xml\" href=\"/opensearch.xml\" title=\"GitHub\">\n    <link rel=\"fluid-icon\" href=\"https://github.com/fluidicon.png\" title=\"GitHub\">\n    <link rel=\"apple-touch-icon\" href=\"/apple-touch-icon.png\">\n    <link rel=\"apple-touch-icon\" sizes=\"57x57\" href=\"/apple-touch-icon-57x57.png\">\n    <link rel=\"apple-touch-icon\" sizes=\"60x60\" href=\"/apple-touch-icon-60x60.png\">\n    <link rel=\"apple-touch-icon\" sizes=\"72x72\" href=\"/apple-touch-icon-72x72.png\">\n    <link rel=\"apple-touch-icon\" sizes=\"76x76\" href=\"/apple-touch-icon-76x76.png\">\n    <link rel=\"apple-touch-icon\" sizes=\"114x114\" href=\"/apple-touch-icon-114x114.png\">\n    <link rel=\"apple-touch-icon\" sizes=\"120x120\" href=\"/apple-touch-icon-120x120.png\">\n    <link rel=\"apple-touch-icon\" sizes=\"144x144\" href=\"/apple-touch-icon-144x144.png\">\n    <link rel=\"apple-touch-icon\" sizes=\"152x152\" href=\"/apple-touch-icon-152x152.png\">\n    <link rel=\"apple-touch-icon\" sizes=\"180x180\" href=\"/apple-touch-icon-180x180.png\">\n    <meta property=\"fb:app_id\" content=\"1401488693436528\">\n\n      <meta content=\"https://avatars0.githubusercontent.com/u/2232217?v=3&amp;s=400\" name=\"twitter:image:src\" /><meta content=\"@github\" name=\"twitter:site\" /><meta content=\"summary\" name=\"twitter:card\" /><meta content=\"aws/amazon-cognito-identity-js\" name=\"twitter:title\" /><meta content=\"Contribute to amazon-cognito-identity-js development by creating an account on GitHub.\" name=\"twitter:description\" />\n      <meta content=\"https://avatars0.githubusercontent.com/u/2232217?v=3&amp;s=400\" property=\"og:image\" /><meta content=\"GitHub\" property=\"og:site_name\" /><meta content=\"object\" property=\"og:type\" /><meta content=\"aws/amazon-cognito-identity-js\" property=\"og:title\" /><meta content=\"https://github.com/aws/amazon-cognito-identity-js\" property=\"og:url\" /><meta content=\"Contribute to amazon-cognito-identity-js development by creating an account on GitHub.\" property=\"og:description\" />\n      <meta name=\"browser-stats-url\" content=\"https://api.github.com/_private/browser/stats\">\n    <meta name=\"browser-errors-url\" content=\"https://api.github.com/_private/browser/errors\">\n    <link rel=\"assets\" href=\"https://assets-cdn.github.com/\">\n    \n    <meta name=\"pjax-timeout\" content=\"1000\">\n    \n\n    <meta name=\"msapplication-TileImage\" content=\"/windows-tile.png\">\n    <meta name=\"msapplication-TileColor\" content=\"#ffffff\">\n    <meta name=\"selected-link\" value=\"repo_source\" data-pjax-transient>\n\n    <meta name=\"google-site-verification\" content=\"KT5gs8h0wvaagLKAVWq8bbeNwnZZK1r1XQysX3xurLU\">\n<meta name=\"google-site-verification\" content=\"ZzhVyEFwb7w3e0-uOTltm8Jsck2F5StVihD0exw2fsA\">\n    <meta name=\"google-analytics\" content=\"UA-3769691-2\">\n\n<meta content=\"collector.githubapp.com\" name=\"octolytics-host\" /><meta content=\"github\" name=\"octolytics-app-id\" /><meta content=\"4815C440:1F26:169F986:57581774\" name=\"octolytics-dimension-request_id\" />\n<meta content=\"/&lt;user-name&gt;/&lt;repo-name&gt;/blob/show\" data-pjax-transient=\"true\" name=\"analytics-location\" />\n\n\n\n  <meta class=\"js-ga-set\" name=\"dimension1\" content=\"Logged Out\">\n\n\n\n        <meta name=\"hostname\" content=\"github.com\">\n    <meta name=\"user-login\" content=\"\">\n\n        <meta name=\"expected-hostname\" content=\"github.com\">\n      <meta name=\"js-proxy-site-detection-payload\" content=\"NDczYzQyMDRiYmQxMTY3Yzk1NDc1ZjA2ZjE3ZTQ0OWU4MjkxZGJlNWNlMDg0MmM1NmE1NTYxOGE4MjMzM2Q4M3x7InJlbW90ZV9hZGRyZXNzIjoiNzIuMjEuMTk2LjY0IiwicmVxdWVzdF9pZCI6IjQ4MTVDNDQwOjFGMjY6MTY5Rjk4Njo1NzU4MTc3NCIsInRpbWVzdGFtcCI6MTQ2NTM5MDk2NH0=\">\n\n\n      <link rel=\"mask-icon\" href=\"https://assets-cdn.github.com/pinned-octocat.svg\" color=\"#4078c0\">\n      <link rel=\"icon\" type=\"image/x-icon\" href=\"https://assets-cdn.github.com/favicon.ico\">\n\n    <meta name=\"html-safe-nonce\" content=\"b09523e75816f84d6e68a1ab123ea489281fabc0\">\n    <meta content=\"234598a96a6a70f33848ee5e8b01e5612d625081\" name=\"form-nonce\" />\n\n    <meta http-equiv=\"x-pjax-version\" content=\"60757957515e5fa4de5f6076078988b4\">\n    \n\n      \n  <meta name=\"description\" content=\"Contribute to amazon-cognito-identity-js development by creating an account on GitHub.\">\n  <meta name=\"go-import\" content=\"github.com/aws/amazon-cognito-identity-js git https://github.com/aws/amazon-cognito-identity-js.git\">\n\n  <meta content=\"2232217\" name=\"octolytics-dimension-user_id\" /><meta content=\"aws\" name=\"octolytics-dimension-user_login\" /><meta content=\"56260598\" name=\"octolytics-dimension-repository_id\" /><meta content=\"aws/amazon-cognito-identity-js\" name=\"octolytics-dimension-repository_nwo\" /><meta content=\"true\" name=\"octolytics-dimension-repository_public\" /><meta content=\"false\" name=\"octolytics-dimension-repository_is_fork\" /><meta content=\"56260598\" name=\"octolytics-dimension-repository_network_root_id\" /><meta content=\"aws/amazon-cognito-identity-js\" name=\"octolytics-dimension-repository_network_root_nwo\" />\n  <link href=\"https://github.com/aws/amazon-cognito-identity-js/commits/master.atom\" rel=\"alternate\" title=\"Recent Commits to amazon-cognito-identity-js:master\" type=\"application/atom+xml\">\n\n\n      <link rel=\"canonical\" href=\"https://github.com/aws/amazon-cognito-identity-js/blob/master/dist/aws-cognito-sdk.js\" data-pjax-transient>\n  </head>\n\n\n  <body class=\"logged-out   env-production macintosh vis-public page-blob\">\n    <div id=\"js-pjax-loader-bar\" class=\"pjax-loader-bar\"></div>\n    <a href=\"#start-of-content\" tabindex=\"1\" class=\"accessibility-aid js-skip-to-content\">Skip to content</a>\n\n    \n    \n    \n\n\n\n          <header class=\"site-header js-details-container\" role=\"banner\">\n  <div class=\"container-responsive\">\n    <a class=\"header-logo-invertocat\" href=\"https://github.com/\" aria-label=\"Homepage\" data-ga-click=\"(Logged out) Header, go to homepage, icon:logo-wordmark\">\n      <svg aria-hidden=\"true\" class=\"octicon octicon-mark-github\" height=\"32\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"32\"><path d=\"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0 0 16 8c0-4.42-3.58-8-8-8z\"></path></svg>\n    </a>\n\n    <button class=\"btn-link right site-header-toggle js-details-target\" type=\"button\" aria-label=\"Toggle navigation\">\n      <svg aria-hidden=\"true\" class=\"octicon octicon-three-bars\" height=\"24\" version=\"1.1\" viewBox=\"0 0 12 16\" width=\"18\"><path d=\"M11.41 9H.59C0 9 0 8.59 0 8c0-.59 0-1 .59-1H11.4c.59 0 .59.41.59 1 0 .59 0 1-.59 1h.01zm0-4H.59C0 5 0 4.59 0 4c0-.59 0-1 .59-1H11.4c.59 0 .59.41.59 1 0 .59 0 1-.59 1h.01zM.59 11H11.4c.59 0 .59.41.59 1 0 .59 0 1-.59 1H.59C0 13 0 12.59 0 12c0-.59 0-1 .59-1z\"></path></svg>\n    </button>\n\n    <div class=\"site-header-menu\">\n      <nav class=\"site-header-nav site-header-nav-main\">\n        <a href=\"/personal\" class=\"js-selected-navigation-item nav-item nav-item-personal\" data-ga-click=\"Header, click, Nav menu - item:personal\" data-selected-links=\"/personal /personal\">\n          Personal\n</a>        <a href=\"/open-source\" class=\"js-selected-navigation-item nav-item nav-item-opensource\" data-ga-click=\"Header, click, Nav menu - item:opensource\" data-selected-links=\"/open-source /open-source\">\n          Open source\n</a>        <a href=\"/business\" class=\"js-selected-navigation-item nav-item nav-item-business\" data-ga-click=\"Header, click, Nav menu - item:business\" data-selected-links=\"/business /business/features /business/customers /business\">\n          Business\n</a>        <a href=\"/explore\" class=\"js-selected-navigation-item nav-item nav-item-explore\" data-ga-click=\"Header, click, Nav menu - item:explore\" data-selected-links=\"/explore /trending /trending/developers /integrations /integrations/feature/code /integrations/feature/collaborate /integrations/feature/ship /explore\">\n          Explore\n</a>      </nav>\n\n      <div class=\"site-header-actions\">\n            <a class=\"btn btn-primary site-header-actions-btn\" href=\"/join?source=header-repo\" data-ga-click=\"(Logged out) Header, clicked Sign up, text:sign-up\">Sign up</a>\n          <a class=\"btn site-header-actions-btn mr-2\" href=\"/login?return_to=%2Faws%2Famazon-cognito-identity-js%2Fblob%2Fmaster%2Fdist%2Faws-cognito-sdk.js\" data-ga-click=\"(Logged out) Header, clicked Sign in, text:sign-in\">Sign in</a>\n      </div>\n\n        <nav class=\"site-header-nav site-header-nav-secondary\">\n          <a class=\"nav-item\" href=\"/pricing\">Pricing</a>\n          <a class=\"nav-item\" href=\"/blog\">Blog</a>\n          <a class=\"nav-item\" href=\"https://help.github.com\">Support</a>\n          <a class=\"nav-item header-search-link\" href=\"https://github.com/search\">Search GitHub</a>\n              <div class=\"header-search scoped-search site-scoped-search js-site-search\" role=\"search\">\n  <!-- </textarea> --><!-- '\"` --><form accept-charset=\"UTF-8\" action=\"/aws/amazon-cognito-identity-js/search\" class=\"js-site-search-form\" data-scoped-search-url=\"/aws/amazon-cognito-identity-js/search\" data-unscoped-search-url=\"/search\" method=\"get\"><div style=\"margin:0;padding:0;display:inline\"><input name=\"utf8\" type=\"hidden\" value=\"&#x2713;\" /></div>\n    <label class=\"form-control header-search-wrapper js-chromeless-input-container\">\n      <div class=\"header-search-scope\">This repository</div>\n      <input type=\"text\"\n        class=\"form-control header-search-input js-site-search-focus js-site-search-field is-clearable\"\n        data-hotkey=\"s\"\n        name=\"q\"\n        placeholder=\"Search\"\n        aria-label=\"Search this repository\"\n        data-unscoped-placeholder=\"Search GitHub\"\n        data-scoped-placeholder=\"Search\"\n        tabindex=\"1\"\n        autocapitalize=\"off\">\n    </label>\n</form></div>\n\n        </nav>\n    </div>\n  </div>\n</header>\n\n\n\n    <div id=\"start-of-content\" class=\"accessibility-aid\"></div>\n\n      <div id=\"js-flash-container\">\n</div>\n\n\n    <div role=\"main\" class=\"main-content\">\n        <div itemscope itemtype=\"http://schema.org/SoftwareSourceCode\">\n    <div id=\"js-repo-pjax-container\" data-pjax-container>\n      \n<div class=\"pagehead repohead instapaper_ignore readability-menu experiment-repo-nav\">\n  <div class=\"container repohead-details-container\">\n\n    \n\n<ul class=\"pagehead-actions\">\n\n  <li>\n      <a href=\"/login?return_to=%2Faws%2Famazon-cognito-identity-js\"\n    class=\"btn btn-sm btn-with-count tooltipped tooltipped-n\"\n    aria-label=\"You must be signed in to watch a repository\" rel=\"nofollow\">\n    <svg aria-hidden=\"true\" class=\"octicon octicon-eye\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path d=\"M8.06 2C3 2 0 8 0 8s3 6 8.06 6C13 14 16 8 16 8s-3-6-7.94-6zM8 12c-2.2 0-4-1.78-4-4 0-2.2 1.8-4 4-4 2.22 0 4 1.8 4 4 0 2.22-1.78 4-4 4zm2-4c0 1.11-.89 2-2 2-1.11 0-2-.89-2-2 0-1.11.89-2 2-2 1.11 0 2 .89 2 2z\"></path></svg>\n    Watch\n  </a>\n  <a class=\"social-count\" href=\"/aws/amazon-cognito-identity-js/watchers\">\n    14\n  </a>\n\n  </li>\n\n  <li>\n      <a href=\"/login?return_to=%2Faws%2Famazon-cognito-identity-js\"\n    class=\"btn btn-sm btn-with-count tooltipped tooltipped-n\"\n    aria-label=\"You must be signed in to star a repository\" rel=\"nofollow\">\n    <svg aria-hidden=\"true\" class=\"octicon octicon-star\" height=\"16\" version=\"1.1\" viewBox=\"0 0 14 16\" width=\"14\"><path d=\"M14 6l-4.9-.64L7 1 4.9 5.36 0 6l3.6 3.26L2.67 14 7 11.67 11.33 14l-.93-4.74z\"></path></svg>\n    Star\n  </a>\n\n    <a class=\"social-count js-social-count\" href=\"/aws/amazon-cognito-identity-js/stargazers\">\n      41\n    </a>\n\n  </li>\n\n  <li>\n      <a href=\"/login?return_to=%2Faws%2Famazon-cognito-identity-js\"\n        class=\"btn btn-sm btn-with-count tooltipped tooltipped-n\"\n        aria-label=\"You must be signed in to fork a repository\" rel=\"nofollow\">\n        <svg aria-hidden=\"true\" class=\"octicon octicon-repo-forked\" height=\"16\" version=\"1.1\" viewBox=\"0 0 10 16\" width=\"10\"><path d=\"M8 1a1.993 1.993 0 0 0-1 3.72V6L5 8 3 6V4.72A1.993 1.993 0 0 0 2 1a1.993 1.993 0 0 0-1 3.72V6.5l3 3v1.78A1.993 1.993 0 0 0 5 15a1.993 1.993 0 0 0 1-3.72V9.5l3-3V4.72A1.993 1.993 0 0 0 8 1zM2 4.2C1.34 4.2.8 3.65.8 3c0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2zm3 10c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2zm3-10c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2z\"></path></svg>\n        Fork\n      </a>\n\n    <a href=\"/aws/amazon-cognito-identity-js/network\" class=\"social-count\">\n      17\n    </a>\n  </li>\n</ul>\n\n    <h1 class=\"public \">\n  <svg aria-hidden=\"true\" class=\"octicon octicon-repo\" height=\"16\" version=\"1.1\" viewBox=\"0 0 12 16\" width=\"12\"><path d=\"M4 9H3V8h1v1zm0-3H3v1h1V6zm0-2H3v1h1V4zm0-2H3v1h1V2zm8-1v12c0 .55-.45 1-1 1H6v2l-1.5-1.5L3 16v-2H1c-.55 0-1-.45-1-1V1c0-.55.45-1 1-1h10c.55 0 1 .45 1 1zm-1 10H1v2h2v-1h3v1h5v-2zm0-10H2v9h9V1z\"></path></svg>\n  <span class=\"author\" itemprop=\"author\"><a href=\"/aws\" class=\"url fn\" rel=\"author\">aws</a></span><!--\n--><span class=\"path-divider\">/</span><!--\n--><strong itemprop=\"name\"><a href=\"/aws/amazon-cognito-identity-js\" data-pjax=\"#js-repo-pjax-container\">amazon-cognito-identity-js</a></strong>\n\n</h1>\n\n  </div>\n  <div class=\"container\">\n    \n<nav class=\"reponav js-repo-nav js-sidenav-container-pjax\"\n     itemscope\n     itemtype=\"http://schema.org/BreadcrumbList\"\n     role=\"navigation\"\n     data-pjax=\"#js-repo-pjax-container\">\n\n  <span itemscope itemtype=\"http://schema.org/ListItem\" itemprop=\"itemListElement\">\n    <a href=\"/aws/amazon-cognito-identity-js\" aria-selected=\"true\" class=\"js-selected-navigation-item selected reponav-item\" data-hotkey=\"g c\" data-selected-links=\"repo_source repo_downloads repo_commits repo_releases repo_tags repo_branches /aws/amazon-cognito-identity-js\" itemprop=\"url\">\n      <svg aria-hidden=\"true\" class=\"octicon octicon-code\" height=\"16\" version=\"1.1\" viewBox=\"0 0 14 16\" width=\"14\"><path d=\"M9.5 3L8 4.5 11.5 8 8 11.5 9.5 13 14 8 9.5 3zm-5 0L0 8l4.5 5L6 11.5 2.5 8 6 4.5 4.5 3z\"></path></svg>\n      <span itemprop=\"name\">Code</span>\n      <meta itemprop=\"position\" content=\"1\">\n</a>  </span>\n\n    <span itemscope itemtype=\"http://schema.org/ListItem\" itemprop=\"itemListElement\">\n      <a href=\"/aws/amazon-cognito-identity-js/issues\" class=\"js-selected-navigation-item reponav-item\" data-hotkey=\"g i\" data-selected-links=\"repo_issues repo_labels repo_milestones /aws/amazon-cognito-identity-js/issues\" itemprop=\"url\">\n        <svg aria-hidden=\"true\" class=\"octicon octicon-issue-opened\" height=\"16\" version=\"1.1\" viewBox=\"0 0 14 16\" width=\"14\"><path d=\"M7 2.3c3.14 0 5.7 2.56 5.7 5.7s-2.56 5.7-5.7 5.7A5.71 5.71 0 0 1 1.3 8c0-3.14 2.56-5.7 5.7-5.7zM7 1C3.14 1 0 4.14 0 8s3.14 7 7 7 7-3.14 7-7-3.14-7-7-7zm1 3H6v5h2V4zm0 6H6v2h2v-2z\"></path></svg>\n        <span itemprop=\"name\">Issues</span>\n        <span class=\"counter\">12</span>\n        <meta itemprop=\"position\" content=\"2\">\n</a>    </span>\n\n  <span itemscope itemtype=\"http://schema.org/ListItem\" itemprop=\"itemListElement\">\n    <a href=\"/aws/amazon-cognito-identity-js/pulls\" class=\"js-selected-navigation-item reponav-item\" data-hotkey=\"g p\" data-selected-links=\"repo_pulls /aws/amazon-cognito-identity-js/pulls\" itemprop=\"url\">\n      <svg aria-hidden=\"true\" class=\"octicon octicon-git-pull-request\" height=\"16\" version=\"1.1\" viewBox=\"0 0 12 16\" width=\"12\"><path d=\"M11 11.28V5c-.03-.78-.34-1.47-.94-2.06C9.46 2.35 8.78 2.03 8 2H7V0L4 3l3 3V4h1c.27.02.48.11.69.31.21.2.3.42.31.69v6.28A1.993 1.993 0 0 0 10 15a1.993 1.993 0 0 0 1-3.72zm-1 2.92c-.66 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2zM4 3c0-1.11-.89-2-2-2a1.993 1.993 0 0 0-1 3.72v6.56A1.993 1.993 0 0 0 2 15a1.993 1.993 0 0 0 1-3.72V4.72c.59-.34 1-.98 1-1.72zm-.8 10c0 .66-.55 1.2-1.2 1.2-.65 0-1.2-.55-1.2-1.2 0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2zM2 4.2C1.34 4.2.8 3.65.8 3c0-.65.55-1.2 1.2-1.2.65 0 1.2.55 1.2 1.2 0 .65-.55 1.2-1.2 1.2z\"></path></svg>\n      <span itemprop=\"name\">Pull requests</span>\n      <span class=\"counter\">1</span>\n      <meta itemprop=\"position\" content=\"3\">\n</a>  </span>\n\n\n\n  <a href=\"/aws/amazon-cognito-identity-js/pulse\" class=\"js-selected-navigation-item reponav-item\" data-selected-links=\"pulse /aws/amazon-cognito-identity-js/pulse\">\n    <svg aria-hidden=\"true\" class=\"octicon octicon-pulse\" height=\"16\" version=\"1.1\" viewBox=\"0 0 14 16\" width=\"14\"><path d=\"M11.5 8L8.8 5.4 6.6 8.5 5.5 1.6 2.38 8H0v2h3.6l.9-1.8.9 5.4L9 8.5l1.6 1.5H14V8z\"></path></svg>\n    Pulse\n</a>\n  <a href=\"/aws/amazon-cognito-identity-js/graphs\" class=\"js-selected-navigation-item reponav-item\" data-selected-links=\"repo_graphs repo_contributors /aws/amazon-cognito-identity-js/graphs\">\n    <svg aria-hidden=\"true\" class=\"octicon octicon-graph\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path d=\"M16 14v1H0V0h1v14h15zM5 13H3V8h2v5zm4 0H7V3h2v10zm4 0h-2V6h2v7z\"></path></svg>\n    Graphs\n</a>\n\n</nav>\n\n  </div>\n</div>\n\n<div class=\"container new-discussion-timeline experiment-repo-nav\">\n  <div class=\"repository-content\">\n\n    \n\n<a href=\"/aws/amazon-cognito-identity-js/blob/b01e372c6a6edfb79c3382dcb9c05e8fd386f979/dist/aws-cognito-sdk.js\" class=\"hidden js-permalink-shortcut\" data-hotkey=\"y\">Permalink</a>\n\n<!-- blob contrib key: blob_contributors:v21:48584209581fe7fa164e269c99f872bd -->\n\n<div class=\"file-navigation js-zeroclipboard-container\">\n  \n<div class=\"select-menu branch-select-menu js-menu-container js-select-menu left\">\n  <button class=\"btn btn-sm select-menu-button js-menu-target css-truncate\" data-hotkey=\"w\"\n    title=\"master\"\n    type=\"button\" aria-label=\"Switch branches or tags\" tabindex=\"0\" aria-haspopup=\"true\">\n    <i>Branch:</i>\n    <span class=\"js-select-button css-truncate-target\">master</span>\n  </button>\n\n  <div class=\"select-menu-modal-holder js-menu-content js-navigation-container\" data-pjax aria-hidden=\"true\">\n\n    <div class=\"select-menu-modal\">\n      <div class=\"select-menu-header\">\n        <svg aria-label=\"Close\" class=\"octicon octicon-x js-menu-close\" height=\"16\" role=\"img\" version=\"1.1\" viewBox=\"0 0 12 16\" width=\"12\"><path d=\"M7.48 8l3.75 3.75-1.48 1.48L6 9.48l-3.75 3.75-1.48-1.48L4.52 8 .77 4.25l1.48-1.48L6 6.52l3.75-3.75 1.48 1.48z\"></path></svg>\n        <span class=\"select-menu-title\">Switch branches/tags</span>\n      </div>\n\n      <div class=\"select-menu-filters\">\n        <div class=\"select-menu-text-filter\">\n          <input type=\"text\" aria-label=\"Filter branches/tags\" id=\"context-commitish-filter-field\" class=\"form-control js-filterable-field js-navigation-enable\" placeholder=\"Filter branches/tags\">\n        </div>\n        <div class=\"select-menu-tabs\">\n          <ul>\n            <li class=\"select-menu-tab\">\n              <a href=\"#\" data-tab-filter=\"branches\" data-filter-placeholder=\"Filter branches/tags\" class=\"js-select-menu-tab\" role=\"tab\">Branches</a>\n            </li>\n            <li class=\"select-menu-tab\">\n              <a href=\"#\" data-tab-filter=\"tags\" data-filter-placeholder=\"Find a tag…\" class=\"js-select-menu-tab\" role=\"tab\">Tags</a>\n            </li>\n          </ul>\n        </div>\n      </div>\n\n      <div class=\"select-menu-list select-menu-tab-bucket js-select-menu-tab-bucket\" data-tab-filter=\"branches\" role=\"menu\">\n\n        <div data-filterable-for=\"context-commitish-filter-field\" data-filterable-type=\"substring\">\n\n\n            <a class=\"select-menu-item js-navigation-item js-navigation-open selected\"\n               href=\"/aws/amazon-cognito-identity-js/blob/master/dist/aws-cognito-sdk.js\"\n               data-name=\"master\"\n               data-skip-pjax=\"true\"\n               rel=\"nofollow\">\n              <svg aria-hidden=\"true\" class=\"octicon octicon-check select-menu-item-icon\" height=\"16\" version=\"1.1\" viewBox=\"0 0 12 16\" width=\"12\"><path d=\"M12 5l-8 8-4-4 1.5-1.5L4 10l6.5-6.5z\"></path></svg>\n              <span class=\"select-menu-item-text css-truncate-target js-select-menu-filter-text\" title=\"master\">\n                master\n              </span>\n            </a>\n        </div>\n\n          <div class=\"select-menu-no-results\">Nothing to show</div>\n      </div>\n\n      <div class=\"select-menu-list select-menu-tab-bucket js-select-menu-tab-bucket\" data-tab-filter=\"tags\">\n        <div data-filterable-for=\"context-commitish-filter-field\" data-filterable-type=\"substring\">\n\n\n        </div>\n\n        <div class=\"select-menu-no-results\">Nothing to show</div>\n      </div>\n\n    </div>\n  </div>\n</div>\n\n  <div class=\"btn-group right\">\n    <a href=\"/aws/amazon-cognito-identity-js/find/master\"\n          class=\"js-pjax-capture-input btn btn-sm\"\n          data-pjax\n          data-hotkey=\"t\">\n      Find file\n    </a>\n    <button aria-label=\"Copy file path to clipboard\" class=\"js-zeroclipboard btn btn-sm zeroclipboard-button tooltipped tooltipped-s\" data-copied-hint=\"Copied!\" type=\"button\">Copy path</button>\n  </div>\n  <div class=\"breadcrumb js-zeroclipboard-target\">\n    <span class=\"repo-root js-repo-root\"><span class=\"js-path-segment\"><a href=\"/aws/amazon-cognito-identity-js\"><span>amazon-cognito-identity-js</span></a></span></span><span class=\"separator\">/</span><span class=\"js-path-segment\"><a href=\"/aws/amazon-cognito-identity-js/tree/master/dist\"><span>dist</span></a></span><span class=\"separator\">/</span><strong class=\"final-path\">aws-cognito-sdk.js</strong>\n  </div>\n</div>\n\n\n  <div class=\"commit-tease\">\n      <span class=\"right\">\n        <a class=\"commit-tease-sha\" href=\"/aws/amazon-cognito-identity-js/commit/0f2883065715455c64d40eb286dbe14dbf3d9d97\" data-pjax>\n          0f28830\n        </a>\n        <relative-time datetime=\"2016-04-20T01:45:32Z\">Apr 19, 2016</relative-time>\n      </span>\n      <div>\n        <img alt=\"@itrestian\" class=\"avatar\" height=\"20\" src=\"https://avatars0.githubusercontent.com/u/18453633?v=3&amp;s=40\" width=\"20\" />\n        <a href=\"/itrestian\" class=\"user-mention\" rel=\"contributor\">itrestian</a>\n          <a href=\"/aws/amazon-cognito-identity-js/commit/0f2883065715455c64d40eb286dbe14dbf3d9d97\" class=\"message\" data-pjax=\"true\" title=\"Update aws-cognito-sdk.js\">Update aws-cognito-sdk.js</a>\n      </div>\n\n    <div class=\"commit-tease-contributors\">\n      <button type=\"button\" class=\"btn-link muted-link contributors-toggle\" data-facebox=\"#blob_contributors_box\">\n        <strong>1</strong>\n         contributor\n      </button>\n      \n    </div>\n\n    <div id=\"blob_contributors_box\" style=\"display:none\">\n      <h2 class=\"facebox-header\" data-facebox-id=\"facebox-header\">Users who have contributed to this file</h2>\n      <ul class=\"facebox-user-list\" data-facebox-id=\"facebox-description\">\n          <li class=\"facebox-user-list-item\">\n            <img alt=\"@itrestian\" height=\"24\" src=\"https://avatars2.githubusercontent.com/u/18453633?v=3&amp;s=48\" width=\"24\" />\n            <a href=\"/itrestian\">itrestian</a>\n          </li>\n      </ul>\n    </div>\n  </div>\n\n<div class=\"file\">\n  <div class=\"file-header\">\n  <div class=\"file-actions\">\n\n    <div class=\"btn-group\">\n      <a href=\"/aws/amazon-cognito-identity-js/raw/master/dist/aws-cognito-sdk.js\" class=\"btn btn-sm \" id=\"raw-url\">Raw</a>\n        <a href=\"/aws/amazon-cognito-identity-js/blame/master/dist/aws-cognito-sdk.js\" class=\"btn btn-sm js-update-url-with-hash\">Blame</a>\n      <a href=\"/aws/amazon-cognito-identity-js/commits/master/dist/aws-cognito-sdk.js\" class=\"btn btn-sm \" rel=\"nofollow\">History</a>\n    </div>\n\n        <a class=\"btn-octicon tooltipped tooltipped-nw\"\n           href=\"https://mac.github.com\"\n           aria-label=\"Open this file in GitHub Desktop\"\n           data-ga-click=\"Repository, open with desktop, type:mac\">\n            <svg aria-hidden=\"true\" class=\"octicon octicon-device-desktop\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path d=\"M15 2H1c-.55 0-1 .45-1 1v9c0 .55.45 1 1 1h5.34c-.25.61-.86 1.39-2.34 2h8c-1.48-.61-2.09-1.39-2.34-2H15c.55 0 1-.45 1-1V3c0-.55-.45-1-1-1zm0 9H1V3h14v8z\"></path></svg>\n        </a>\n\n        <button type=\"button\" class=\"btn-octicon disabled tooltipped tooltipped-nw\"\n          aria-label=\"You must be signed in to make or propose changes\">\n          <svg aria-hidden=\"true\" class=\"octicon octicon-pencil\" height=\"16\" version=\"1.1\" viewBox=\"0 0 14 16\" width=\"14\"><path d=\"M0 12v3h3l8-8-3-3-8 8zm3 2H1v-2h1v1h1v1zm10.3-9.3L12 6 9 3l1.3-1.3a.996.996 0 0 1 1.41 0l1.59 1.59c.39.39.39 1.02 0 1.41z\"></path></svg>\n        </button>\n        <button type=\"button\" class=\"btn-octicon btn-octicon-danger disabled tooltipped tooltipped-nw\"\n          aria-label=\"You must be signed in to make or propose changes\">\n          <svg aria-hidden=\"true\" class=\"octicon octicon-trashcan\" height=\"16\" version=\"1.1\" viewBox=\"0 0 12 16\" width=\"12\"><path d=\"M11 2H9c0-.55-.45-1-1-1H5c-.55 0-1 .45-1 1H2c-.55 0-1 .45-1 1v1c0 .55.45 1 1 1v9c0 .55.45 1 1 1h7c.55 0 1-.45 1-1V5c.55 0 1-.45 1-1V3c0-.55-.45-1-1-1zm-1 12H3V5h1v8h1V5h1v8h1V5h1v8h1V5h1v9zm1-10H2V3h9v1z\"></path></svg>\n        </button>\n  </div>\n\n  <div class=\"file-info\">\n      12230 lines (9932 sloc)\n      <span class=\"file-info-divider\"></span>\n    351 KB\n  </div>\n</div>\n\n  \n\n  <div itemprop=\"text\" class=\"blob-wrapper data type-javascript\">\n      <table class=\"highlight tab-size js-file-line-container\" data-tab-size=\"8\">\n      <tr>\n        <td id=\"L1\" class=\"blob-num js-line-number\" data-line-number=\"1\"></td>\n        <td id=\"LC1\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">// AWS SDK for JavaScript v2.3.4</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2\" class=\"blob-num js-line-number\" data-line-number=\"2\"></td>\n        <td id=\"LC2\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3\" class=\"blob-num js-line-number\" data-line-number=\"3\"></td>\n        <td id=\"LC3\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c\">// License at https://sdk.amazonaws.com/js/BUNDLE_LICENSE.txt</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4\" class=\"blob-num js-line-number\" data-line-number=\"4\"></td>\n        <td id=\"LC4\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span> <span class=\"pl-en\">e</span>(<span class=\"pl-smi\">t</span>,<span class=\"pl-smi\">n</span>,<span class=\"pl-smi\">r</span>){<span class=\"pl-k\">function</span> <span class=\"pl-en\">s</span>(<span class=\"pl-smi\">o</span>,<span class=\"pl-smi\">u</span>){<span class=\"pl-k\">if</span>(<span class=\"pl-k\">!</span>n[o]){<span class=\"pl-k\">if</span>(<span class=\"pl-k\">!</span>t[o]){<span class=\"pl-k\">var</span> a<span class=\"pl-k\">=</span><span class=\"pl-k\">typeof</span> require<span class=\"pl-k\">==</span><span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>function<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">&amp;&amp;</span>require;<span class=\"pl-k\">if</span>(<span class=\"pl-k\">!</span>u<span class=\"pl-k\">&amp;&amp;</span>a)<span class=\"pl-k\">return</span> <span class=\"pl-en\">a</span>(o,<span class=\"pl-k\">!</span><span class=\"pl-c1\">0</span>);<span class=\"pl-k\">if</span>(i)<span class=\"pl-k\">return</span> <span class=\"pl-en\">i</span>(o,<span class=\"pl-k\">!</span><span class=\"pl-c1\">0</span>);<span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Cannot find module &#39;<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">+</span>o<span class=\"pl-k\">+</span><span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>&#39;<span class=\"pl-pds\">&quot;</span></span>)}<span class=\"pl-k\">var</span> f<span class=\"pl-k\">=</span>n[o]<span class=\"pl-k\">=</span>{exports<span class=\"pl-k\">:</span>{}};t[o][<span class=\"pl-c1\">0</span>].<span class=\"pl-c1\">call</span>(<span class=\"pl-smi\">f</span>.<span class=\"pl-smi\">exports</span>,<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">e</span>){<span class=\"pl-k\">var</span> n<span class=\"pl-k\">=</span>t[o][<span class=\"pl-c1\">1</span>][e];<span class=\"pl-k\">return</span> <span class=\"pl-en\">s</span>(n<span class=\"pl-k\">?</span>n<span class=\"pl-k\">:</span>e)},f,<span class=\"pl-smi\">f</span>.<span class=\"pl-smi\">exports</span>,e,t,n,r)}<span class=\"pl-k\">return</span> n[o].<span class=\"pl-smi\">exports</span>}<span class=\"pl-k\">var</span> i<span class=\"pl-k\">=</span><span class=\"pl-k\">typeof</span> require<span class=\"pl-k\">==</span><span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>function<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">&amp;&amp;</span>require;<span class=\"pl-k\">for</span>(<span class=\"pl-k\">var</span> o<span class=\"pl-k\">=</span><span class=\"pl-c1\">0</span>;o<span class=\"pl-k\">&lt;</span><span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">length</span>;o<span class=\"pl-k\">++</span>)<span class=\"pl-en\">s</span>(r[o]);<span class=\"pl-k\">return</span> s})({<span class=\"pl-c1\">1</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L5\" class=\"blob-num js-line-number\" data-line-number=\"5\"></td>\n        <td id=\"LC5\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L6\" class=\"blob-num js-line-number\" data-line-number=\"6\"></td>\n        <td id=\"LC6\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7\" class=\"blob-num js-line-number\" data-line-number=\"7\"></td>\n        <td id=\"LC7\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-en\">apiLoader</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">svc</span>, <span class=\"pl-smi\">version</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8\" class=\"blob-num js-line-number\" data-line-number=\"8\"></td>\n        <td id=\"LC8\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">apiLoader</span>.<span class=\"pl-smi\">services</span>[svc][version];</td>\n      </tr>\n      <tr>\n        <td id=\"L9\" class=\"blob-num js-line-number\" data-line-number=\"9\"></td>\n        <td id=\"LC9\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L10\" class=\"blob-num js-line-number\" data-line-number=\"10\"></td>\n        <td id=\"LC10\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11\" class=\"blob-num js-line-number\" data-line-number=\"11\"></td>\n        <td id=\"LC11\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12\" class=\"blob-num js-line-number\" data-line-number=\"12\"></td>\n        <td id=\"LC12\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">apiLoader</span>.<span class=\"pl-smi\">services</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L13\" class=\"blob-num js-line-number\" data-line-number=\"13\"></td>\n        <td id=\"LC13\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L14\" class=\"blob-num js-line-number\" data-line-number=\"14\"></td>\n        <td id=\"LC14\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-c1\">XML</span>.<span class=\"pl-smi\">Parser</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./xml/browser_parser<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L15\" class=\"blob-num js-line-number\" data-line-number=\"15\"></td>\n        <td id=\"LC15\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L16\" class=\"blob-num js-line-number\" data-line-number=\"16\"></td>\n        <td id=\"LC16\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./http/xhr<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L17\" class=\"blob-num js-line-number\" data-line-number=\"17\"></td>\n        <td id=\"LC17\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L18\" class=\"blob-num js-line-number\" data-line-number=\"18\"></td>\n        <td id=\"LC18\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-c1\">window</span>.<span class=\"pl-smi\">AWSCognito</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L19\" class=\"blob-num js-line-number\" data-line-number=\"19\"></td>\n        <td id=\"LC19\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">module</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L20\" class=\"blob-num js-line-number\" data-line-number=\"20\"></td>\n        <td id=\"LC20\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> self <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">AWSCognito</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L21\" class=\"blob-num js-line-number\" data-line-number=\"21\"></td>\n        <td id=\"LC21\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">apiLoader</span>.<span class=\"pl-smi\">services</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>cognitoidp<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L22\" class=\"blob-num js-line-number\" data-line-number=\"22\"></td>\n        <td id=\"LC22\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> AWSCognito <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L23\" class=\"blob-num js-line-number\" data-line-number=\"23\"></td>\n        <td id=\"LC23\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">AWSCognito</span>.<span class=\"pl-smi\">CognitoIdentityServiceProvider</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>.<span class=\"pl-en\">defineService</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>cognitoidp<span class=\"pl-pds\">&#39;</span></span>, [ <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>2016-04-18<span class=\"pl-pds\">&#39;</span></span> ]);</td>\n      </tr>\n      <tr>\n        <td id=\"L24\" class=\"blob-num js-line-number\" data-line-number=\"24\"></td>\n        <td id=\"LC24\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L25\" class=\"blob-num js-line-number\" data-line-number=\"25\"></td>\n        <td id=\"LC25\" class=\"blob-code blob-code-inner js-file-line\">AWS.apiLoader.services[&#39;cognitoidp&#39;][&#39;2016-04-18&#39;] = {&quot;version&quot;:&quot;2.0&quot;,&quot;metadata&quot;:{&quot;apiVersion&quot;:&quot;2016-04-18&quot;,&quot;endpointPrefix&quot;:&quot;cognito-idp&quot;,&quot;jsonVersion&quot;:&quot;1.1&quot;,&quot;protocol&quot;:&quot;json&quot;,&quot;serviceFullName&quot;:&quot;AWSCognitoIdentityProviderService&quot;,&quot;signatureVersion&quot;:&quot;v4&quot;,&quot;targetPrefix&quot;:&quot;AWSCognitoIdentityProviderService&quot;},&quot;operations&quot;:{&quot;AddCustomAttributes&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;CustomAttributes&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;CustomAttributes&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{&quot;shape&quot;:&quot;S4&quot;}}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;AdminConfirmSignUp&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;Username&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;AdminDeleteUser&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;Username&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;}}},&quot;http&quot;:{}},&quot;AdminDeleteUserAttributes&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;Username&quot;,&quot;UserAttributeNames&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;UserAttributeNames&quot;:{&quot;shape&quot;:&quot;Sh&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;AdminDisableUser&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;Username&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;AdminEnableUser&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;Username&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;AdminGetUser&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;Username&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;Username&quot;],&quot;members&quot;:{&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;UserAttributes&quot;:{&quot;shape&quot;:&quot;Sq&quot;},&quot;UserCreateDate&quot;:{&quot;type&quot;:&quot;timestamp&quot;},&quot;UserLastModifiedDate&quot;:{&quot;type&quot;:&quot;timestamp&quot;},&quot;Enabled&quot;:{&quot;type&quot;:&quot;boolean&quot;},&quot;UserStatus&quot;:{},&quot;MFAOptions&quot;:{&quot;shape&quot;:&quot;Sv&quot;}}},&quot;http&quot;:{}},&quot;AdminResetUserPassword&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;Username&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;AdminSetUserSettings&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;Username&quot;,&quot;MFAOptions&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;MFAOptions&quot;:{&quot;shape&quot;:&quot;Sv&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;AdminUpdateUserAttributes&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;Username&quot;,&quot;UserAttributes&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;UserAttributes&quot;:{&quot;shape&quot;:&quot;Sq&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;Authenticate&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;ClientId&quot;,&quot;Username&quot;,&quot;PasswordClaim&quot;],&quot;members&quot;:{&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;SecretHash&quot;:{&quot;shape&quot;:&quot;S16&quot;},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;PasswordClaim&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;SecretBlock&quot;:{&quot;type&quot;:&quot;blob&quot;},&quot;Signature&quot;:{&quot;type&quot;:&quot;blob&quot;}},&quot;sensitive&quot;:true},&quot;Timestamp&quot;:{&quot;type&quot;:&quot;timestamp&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;AuthenticationResult&quot;:{&quot;shape&quot;:&quot;S1a&quot;},&quot;AuthState&quot;:{&quot;shape&quot;:&quot;S1d&quot;},&quot;CodeDeliveryDetails&quot;:{&quot;shape&quot;:&quot;S1e&quot;}}},&quot;http&quot;:{}},&quot;ChangePassword&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;PreviousPassword&quot;,&quot;ProposedPassword&quot;],&quot;members&quot;:{&quot;PreviousPassword&quot;:{&quot;shape&quot;:&quot;S1g&quot;},&quot;ProposedPassword&quot;:{&quot;shape&quot;:&quot;S1g&quot;},&quot;AccessToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;ConfirmForgotPassword&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;ClientId&quot;,&quot;Username&quot;,&quot;ConfirmationCode&quot;,&quot;Password&quot;],&quot;members&quot;:{&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;SecretHash&quot;:{&quot;shape&quot;:&quot;S16&quot;},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;ConfirmationCode&quot;:{},&quot;Password&quot;:{&quot;shape&quot;:&quot;S1g&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;ConfirmSignUp&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;ClientId&quot;,&quot;Username&quot;,&quot;ConfirmationCode&quot;],&quot;members&quot;:{&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;SecretHash&quot;:{&quot;shape&quot;:&quot;S16&quot;},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;ConfirmationCode&quot;:{},&quot;ForceAliasCreation&quot;:{&quot;type&quot;:&quot;boolean&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;CreateUserPool&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;PoolName&quot;],&quot;members&quot;:{&quot;PoolName&quot;:{},&quot;Policies&quot;:{&quot;shape&quot;:&quot;S1q&quot;},&quot;LambdaConfig&quot;:{&quot;shape&quot;:&quot;S1t&quot;},&quot;AutoVerifiedAttributes&quot;:{&quot;shape&quot;:&quot;S1v&quot;},&quot;AliasAttributes&quot;:{&quot;shape&quot;:&quot;S1x&quot;},&quot;SmsVerificationMessage&quot;:{},&quot;EmailVerificationMessage&quot;:{},&quot;EmailVerificationSubject&quot;:{},&quot;SmsAuthenticationMessage&quot;:{},&quot;MfaConfiguration&quot;:{}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;UserPool&quot;:{&quot;shape&quot;:&quot;S24&quot;}}},&quot;http&quot;:{}},&quot;CreateUserPoolClient&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;ClientName&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;ClientName&quot;:{},&quot;GenerateSecret&quot;:{&quot;type&quot;:&quot;boolean&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;UserPoolClient&quot;:{&quot;shape&quot;:&quot;S2b&quot;}}},&quot;http&quot;:{}},&quot;DeleteUser&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;AccessToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;}}},&quot;http&quot;:{}},&quot;DeleteUserAttributes&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserAttributeNames&quot;],&quot;members&quot;:{&quot;UserAttributeNames&quot;:{&quot;shape&quot;:&quot;Sh&quot;},&quot;AccessToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;DeleteUserPool&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{}}},&quot;http&quot;:{}},&quot;DeleteUserPoolClient&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;ClientId&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;}}},&quot;http&quot;:{}},&quot;DescribeUserPool&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;UserPool&quot;:{&quot;shape&quot;:&quot;S24&quot;}}},&quot;http&quot;:{}},&quot;DescribeUserPoolClient&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;ClientId&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;UserPoolClient&quot;:{&quot;shape&quot;:&quot;S2b&quot;}}},&quot;http&quot;:{}},&quot;EnhanceAuth&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;ClientId&quot;,&quot;Username&quot;,&quot;AuthState&quot;,&quot;Code&quot;],&quot;members&quot;:{&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;SecretHash&quot;:{&quot;shape&quot;:&quot;S16&quot;},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;AuthState&quot;:{&quot;shape&quot;:&quot;S1d&quot;},&quot;Code&quot;:{}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;AuthenticationResult&quot;:{&quot;shape&quot;:&quot;S1a&quot;}}},&quot;http&quot;:{}},&quot;ForgotPassword&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;ClientId&quot;,&quot;Username&quot;],&quot;members&quot;:{&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;SecretHash&quot;:{&quot;shape&quot;:&quot;S16&quot;},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;CodeDeliveryDetails&quot;:{&quot;shape&quot;:&quot;S1e&quot;}}},&quot;http&quot;:{}},&quot;GetAuthenticationDetails&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;ClientId&quot;,&quot;Username&quot;,&quot;SrpA&quot;],&quot;members&quot;:{&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;SecretHash&quot;:{&quot;shape&quot;:&quot;S16&quot;},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;SrpA&quot;:{},&quot;ValidationData&quot;:{&quot;shape&quot;:&quot;Sq&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;Salt&quot;,&quot;SrpB&quot;,&quot;SecretBlock&quot;],&quot;members&quot;:{&quot;Salt&quot;:{},&quot;SrpB&quot;:{},&quot;SecretBlock&quot;:{&quot;type&quot;:&quot;blob&quot;},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;}}},&quot;http&quot;:{}},&quot;GetJWKS&quot;:{&quot;http&quot;:{&quot;method&quot;:&quot;GET&quot;,&quot;requestUri&quot;:&quot;/{userPoolId}/.well-known/jwks.json&quot;,&quot;responseCode&quot;:200},&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{&quot;location&quot;:&quot;uri&quot;,&quot;locationName&quot;:&quot;userPoolId&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;keys&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;kty&quot;:{},&quot;alg&quot;:{},&quot;use&quot;:{},&quot;kid&quot;:{},&quot;n&quot;:{},&quot;e&quot;:{}}}}}}},&quot;GetOpenIdConfiguration&quot;:{&quot;http&quot;:{&quot;method&quot;:&quot;GET&quot;,&quot;requestUri&quot;:&quot;/{userPoolId}/.well-known/openid-configuration&quot;,&quot;responseCode&quot;:200},&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{&quot;location&quot;:&quot;uri&quot;,&quot;locationName&quot;:&quot;userPoolId&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;issuer&quot;:{},&quot;jwks_uri&quot;:{},&quot;authorization_endpoint&quot;:{},&quot;subject_types_supported&quot;:{&quot;shape&quot;:&quot;S31&quot;},&quot;response_types_supported&quot;:{&quot;shape&quot;:&quot;S31&quot;},&quot;id_token_signing_alg_values_supported&quot;:{&quot;shape&quot;:&quot;S31&quot;}}}},&quot;GetUser&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;AccessToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;Username&quot;,&quot;UserAttributes&quot;],&quot;members&quot;:{&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;UserAttributes&quot;:{&quot;shape&quot;:&quot;Sq&quot;},&quot;MFAOptions&quot;:{&quot;shape&quot;:&quot;Sv&quot;}}},&quot;http&quot;:{}},&quot;GetUserAttributeVerificationCode&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;AttributeName&quot;],&quot;members&quot;:{&quot;AccessToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;},&quot;AttributeName&quot;:{}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;CodeDeliveryDetails&quot;:{&quot;shape&quot;:&quot;S1e&quot;}}},&quot;http&quot;:{}},&quot;ListUserPoolClients&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;MaxResults&quot;:{&quot;type&quot;:&quot;integer&quot;},&quot;NextToken&quot;:{}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;UserPoolClients&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;UserPoolId&quot;:{},&quot;ClientName&quot;:{}}}},&quot;NextToken&quot;:{}}},&quot;http&quot;:{}},&quot;ListUserPools&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;MaxResults&quot;],&quot;members&quot;:{&quot;NextToken&quot;:{},&quot;MaxResults&quot;:{&quot;type&quot;:&quot;integer&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;UserPools&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;Id&quot;:{},&quot;Name&quot;:{},&quot;LambdaConfig&quot;:{&quot;shape&quot;:&quot;S1t&quot;},&quot;Status&quot;:{},&quot;LastModifiedDate&quot;:{&quot;type&quot;:&quot;timestamp&quot;},&quot;CreationDate&quot;:{&quot;type&quot;:&quot;timestamp&quot;}}}},&quot;NextToken&quot;:{}}},&quot;http&quot;:{}},&quot;ListUsers&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;AttributesToGet&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{}},&quot;Limit&quot;:{&quot;type&quot;:&quot;integer&quot;},&quot;PaginationToken&quot;:{},&quot;UserStatus&quot;:{}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;Users&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;Attributes&quot;:{&quot;shape&quot;:&quot;Sq&quot;},&quot;UserCreateDate&quot;:{&quot;type&quot;:&quot;timestamp&quot;},&quot;UserLastModifiedDate&quot;:{&quot;type&quot;:&quot;timestamp&quot;},&quot;Enabled&quot;:{&quot;type&quot;:&quot;boolean&quot;},&quot;UserStatus&quot;:{}}}},&quot;PaginationToken&quot;:{}}},&quot;http&quot;:{}},&quot;RefreshTokens&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;ClientId&quot;,&quot;RefreshToken&quot;],&quot;members&quot;:{&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;ClientSecret&quot;:{&quot;shape&quot;:&quot;S2c&quot;},&quot;RefreshToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;AuthenticationResult&quot;:{&quot;shape&quot;:&quot;S1a&quot;}}},&quot;http&quot;:{}},&quot;ResendConfirmationCode&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;ClientId&quot;,&quot;Username&quot;],&quot;members&quot;:{&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;SecretHash&quot;:{&quot;shape&quot;:&quot;S16&quot;},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;CodeDeliveryDetails&quot;:{&quot;shape&quot;:&quot;S1e&quot;}}},&quot;http&quot;:{}},&quot;SetUserSettings&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;AccessToken&quot;,&quot;MFAOptions&quot;],&quot;members&quot;:{&quot;AccessToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;},&quot;MFAOptions&quot;:{&quot;shape&quot;:&quot;Sv&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;SignUp&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;ClientId&quot;,&quot;Username&quot;,&quot;Password&quot;],&quot;members&quot;:{&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;SecretHash&quot;:{&quot;shape&quot;:&quot;S16&quot;},&quot;Username&quot;:{&quot;shape&quot;:&quot;Sd&quot;},&quot;Password&quot;:{&quot;shape&quot;:&quot;S1g&quot;},&quot;UserAttributes&quot;:{&quot;shape&quot;:&quot;Sq&quot;},&quot;ValidationData&quot;:{&quot;shape&quot;:&quot;Sq&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;UserConfirmed&quot;:{&quot;type&quot;:&quot;boolean&quot;},&quot;CodeDeliveryDetails&quot;:{&quot;shape&quot;:&quot;S1e&quot;}}},&quot;http&quot;:{}},&quot;UpdateUserAttributes&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserAttributes&quot;],&quot;members&quot;:{&quot;UserAttributes&quot;:{&quot;shape&quot;:&quot;Sq&quot;},&quot;AccessToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;CodeDeliveryDetailsList&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{&quot;shape&quot;:&quot;S1e&quot;}}}},&quot;http&quot;:{}},&quot;UpdateUserPool&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;Policies&quot;:{&quot;shape&quot;:&quot;S1q&quot;},&quot;LambdaConfig&quot;:{&quot;shape&quot;:&quot;S1t&quot;},&quot;AutoVerifiedAttributes&quot;:{&quot;shape&quot;:&quot;S1v&quot;},&quot;SmsVerificationMessage&quot;:{},&quot;EmailVerificationMessage&quot;:{},&quot;EmailVerificationSubject&quot;:{},&quot;SmsAuthenticationMessage&quot;:{},&quot;MfaConfiguration&quot;:{}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}},&quot;UpdateUserPoolClient&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;UserPoolId&quot;,&quot;ClientId&quot;],&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;ClientName&quot;:{}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;UserPoolClient&quot;:{&quot;shape&quot;:&quot;S2b&quot;}}},&quot;http&quot;:{}},&quot;VerifyUserAttribute&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;AttributeName&quot;,&quot;Code&quot;],&quot;members&quot;:{&quot;AccessToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;},&quot;AttributeName&quot;:{},&quot;Code&quot;:{}}},&quot;output&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{}},&quot;http&quot;:{}}},&quot;shapes&quot;:{&quot;S4&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;Name&quot;:{},&quot;AttributeDataType&quot;:{},&quot;DeveloperOnlyAttribute&quot;:{&quot;type&quot;:&quot;boolean&quot;},&quot;Mutable&quot;:{&quot;type&quot;:&quot;boolean&quot;},&quot;Required&quot;:{&quot;type&quot;:&quot;boolean&quot;},&quot;NumberAttributeConstraints&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;MinValue&quot;:{},&quot;MaxValue&quot;:{}}},&quot;StringAttributeConstraints&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;MinLength&quot;:{},&quot;MaxLength&quot;:{}}}}},&quot;Sd&quot;:{&quot;type&quot;:&quot;string&quot;,&quot;sensitive&quot;:true},&quot;Sh&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{}},&quot;Sq&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;Name&quot;],&quot;members&quot;:{&quot;Name&quot;:{},&quot;Value&quot;:{&quot;type&quot;:&quot;string&quot;,&quot;sensitive&quot;:true}}}},&quot;Sv&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;DeliveryMedium&quot;:{},&quot;AttributeName&quot;:{}}}},&quot;S15&quot;:{&quot;type&quot;:&quot;string&quot;,&quot;sensitive&quot;:true},&quot;S16&quot;:{&quot;type&quot;:&quot;string&quot;,&quot;sensitive&quot;:true},&quot;S1a&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;AccessToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;},&quot;ExpiresIn&quot;:{&quot;type&quot;:&quot;integer&quot;},&quot;TokenType&quot;:{},&quot;RefreshToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;},&quot;IdToken&quot;:{&quot;shape&quot;:&quot;S1b&quot;}}},&quot;S1b&quot;:{&quot;type&quot;:&quot;string&quot;,&quot;sensitive&quot;:true},&quot;S1d&quot;:{&quot;type&quot;:&quot;string&quot;,&quot;sensitive&quot;:true},&quot;S1e&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;Destination&quot;:{},&quot;DeliveryMedium&quot;:{},&quot;AttributeName&quot;:{}}},&quot;S1g&quot;:{&quot;type&quot;:&quot;string&quot;,&quot;sensitive&quot;:true},&quot;S1q&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;PasswordPolicy&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;MinimumLength&quot;:{&quot;type&quot;:&quot;integer&quot;},&quot;RequireUppercase&quot;:{&quot;type&quot;:&quot;boolean&quot;},&quot;RequireLowercase&quot;:{&quot;type&quot;:&quot;boolean&quot;},&quot;RequireNumbers&quot;:{&quot;type&quot;:&quot;boolean&quot;},&quot;RequireSymbols&quot;:{&quot;type&quot;:&quot;boolean&quot;}}}}},&quot;S1t&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;PreSignUp&quot;:{},&quot;CustomMessage&quot;:{},&quot;PostConfirmation&quot;:{},&quot;PreAuthentication&quot;:{},&quot;PostAuthentication&quot;:{}}},&quot;S1v&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{}},&quot;S1x&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{}},&quot;S24&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;Id&quot;:{},&quot;Name&quot;:{},&quot;Policies&quot;:{&quot;shape&quot;:&quot;S1q&quot;},&quot;LambdaConfig&quot;:{&quot;shape&quot;:&quot;S1t&quot;},&quot;Status&quot;:{},&quot;LastModifiedDate&quot;:{&quot;type&quot;:&quot;timestamp&quot;},&quot;CreationDate&quot;:{&quot;type&quot;:&quot;timestamp&quot;},&quot;SchemaAttributes&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{&quot;shape&quot;:&quot;S4&quot;}},&quot;AutoVerifiedAttributes&quot;:{&quot;shape&quot;:&quot;S1v&quot;},&quot;AliasAttributes&quot;:{&quot;shape&quot;:&quot;S1x&quot;},&quot;SmsVerificationMessage&quot;:{},&quot;EmailVerificationMessage&quot;:{},&quot;EmailVerificationSubject&quot;:{},&quot;SmsAuthenticationMessage&quot;:{},&quot;MfaConfiguration&quot;:{},&quot;EstimatedNumberOfUsers&quot;:{&quot;type&quot;:&quot;integer&quot;}}},&quot;S2b&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;UserPoolId&quot;:{},&quot;ClientName&quot;:{},&quot;ClientId&quot;:{&quot;shape&quot;:&quot;S15&quot;},&quot;ClientSecret&quot;:{&quot;shape&quot;:&quot;S2c&quot;},&quot;LastModifiedDate&quot;:{&quot;type&quot;:&quot;timestamp&quot;},&quot;CreationDate&quot;:{&quot;type&quot;:&quot;timestamp&quot;}}},&quot;S2c&quot;:{&quot;type&quot;:&quot;string&quot;,&quot;sensitive&quot;:true},&quot;S31&quot;:{&quot;type&quot;:&quot;list&quot;,&quot;member&quot;:{}}}};</td>\n      </tr>\n      <tr>\n        <td id=\"L26\" class=\"blob-num js-line-number\" data-line-number=\"26\"></td>\n        <td id=\"LC26\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">apiLoader</span>.<span class=\"pl-smi\">services</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sts<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L27\" class=\"blob-num js-line-number\" data-line-number=\"27\"></td>\n        <td id=\"LC27\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-c1\">STS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>.<span class=\"pl-en\">defineService</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sts<span class=\"pl-pds\">&#39;</span></span>, [ <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>2011-06-15<span class=\"pl-pds\">&#39;</span></span> ]);</td>\n      </tr>\n      <tr>\n        <td id=\"L28\" class=\"blob-num js-line-number\" data-line-number=\"28\"></td>\n        <td id=\"LC28\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./services/sts<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L29\" class=\"blob-num js-line-number\" data-line-number=\"29\"></td>\n        <td id=\"LC29\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L30\" class=\"blob-num js-line-number\" data-line-number=\"30\"></td>\n        <td id=\"LC30\" class=\"blob-code blob-code-inner js-file-line\">AWS.apiLoader.services[&#39;sts&#39;][&#39;2011-06-15&#39;] = {&quot;version&quot;:&quot;2.0&quot;,&quot;metadata&quot;:{&quot;apiVersion&quot;:&quot;2011-06-15&quot;,&quot;endpointPrefix&quot;:&quot;sts&quot;,&quot;globalEndpoint&quot;:&quot;sts.amazonaws.com&quot;,&quot;protocol&quot;:&quot;query&quot;,&quot;serviceAbbreviation&quot;:&quot;AWS STS&quot;,&quot;serviceFullName&quot;:&quot;AWS Security Token Service&quot;,&quot;signatureVersion&quot;:&quot;v4&quot;,&quot;xmlNamespace&quot;:&quot;https://sts.amazonaws.com/doc/2011-06-15/&quot;},&quot;operations&quot;:{&quot;AssumeRole&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;RoleArn&quot;,&quot;RoleSessionName&quot;],&quot;members&quot;:{&quot;RoleArn&quot;:{},&quot;RoleSessionName&quot;:{},&quot;Policy&quot;:{},&quot;DurationSeconds&quot;:{&quot;type&quot;:&quot;integer&quot;},&quot;ExternalId&quot;:{},&quot;SerialNumber&quot;:{},&quot;TokenCode&quot;:{}}},&quot;output&quot;:{&quot;resultWrapper&quot;:&quot;AssumeRoleResult&quot;,&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;Credentials&quot;:{&quot;shape&quot;:&quot;Sa&quot;},&quot;AssumedRoleUser&quot;:{&quot;shape&quot;:&quot;Sf&quot;},&quot;PackedPolicySize&quot;:{&quot;type&quot;:&quot;integer&quot;}}},&quot;http&quot;:{}},&quot;AssumeRoleWithSAML&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;RoleArn&quot;,&quot;PrincipalArn&quot;,&quot;SAMLAssertion&quot;],&quot;members&quot;:{&quot;RoleArn&quot;:{},&quot;PrincipalArn&quot;:{},&quot;SAMLAssertion&quot;:{},&quot;Policy&quot;:{},&quot;DurationSeconds&quot;:{&quot;type&quot;:&quot;integer&quot;}}},&quot;output&quot;:{&quot;resultWrapper&quot;:&quot;AssumeRoleWithSAMLResult&quot;,&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;Credentials&quot;:{&quot;shape&quot;:&quot;Sa&quot;},&quot;AssumedRoleUser&quot;:{&quot;shape&quot;:&quot;Sf&quot;},&quot;PackedPolicySize&quot;:{&quot;type&quot;:&quot;integer&quot;},&quot;Subject&quot;:{},&quot;SubjectType&quot;:{},&quot;Issuer&quot;:{},&quot;Audience&quot;:{},&quot;NameQualifier&quot;:{}}},&quot;http&quot;:{}},&quot;AssumeRoleWithWebIdentity&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;RoleArn&quot;,&quot;RoleSessionName&quot;,&quot;WebIdentityToken&quot;],&quot;members&quot;:{&quot;RoleArn&quot;:{},&quot;RoleSessionName&quot;:{},&quot;WebIdentityToken&quot;:{},&quot;ProviderId&quot;:{},&quot;Policy&quot;:{},&quot;DurationSeconds&quot;:{&quot;type&quot;:&quot;integer&quot;}}},&quot;output&quot;:{&quot;resultWrapper&quot;:&quot;AssumeRoleWithWebIdentityResult&quot;,&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;Credentials&quot;:{&quot;shape&quot;:&quot;Sa&quot;},&quot;SubjectFromWebIdentityToken&quot;:{},&quot;AssumedRoleUser&quot;:{&quot;shape&quot;:&quot;Sf&quot;},&quot;PackedPolicySize&quot;:{&quot;type&quot;:&quot;integer&quot;},&quot;Provider&quot;:{},&quot;Audience&quot;:{}}},&quot;http&quot;:{}},&quot;DecodeAuthorizationMessage&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;EncodedMessage&quot;],&quot;members&quot;:{&quot;EncodedMessage&quot;:{}}},&quot;output&quot;:{&quot;resultWrapper&quot;:&quot;DecodeAuthorizationMessageResult&quot;,&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;DecodedMessage&quot;:{}}},&quot;http&quot;:{}},&quot;GetFederationToken&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;Name&quot;],&quot;members&quot;:{&quot;Name&quot;:{},&quot;Policy&quot;:{},&quot;DurationSeconds&quot;:{&quot;type&quot;:&quot;integer&quot;}}},&quot;output&quot;:{&quot;resultWrapper&quot;:&quot;GetFederationTokenResult&quot;,&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;Credentials&quot;:{&quot;shape&quot;:&quot;Sa&quot;},&quot;FederatedUser&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;FederatedUserId&quot;,&quot;Arn&quot;],&quot;members&quot;:{&quot;FederatedUserId&quot;:{},&quot;Arn&quot;:{}}},&quot;PackedPolicySize&quot;:{&quot;type&quot;:&quot;integer&quot;}}},&quot;http&quot;:{}},&quot;GetSessionToken&quot;:{&quot;input&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;DurationSeconds&quot;:{&quot;type&quot;:&quot;integer&quot;},&quot;SerialNumber&quot;:{},&quot;TokenCode&quot;:{}}},&quot;output&quot;:{&quot;resultWrapper&quot;:&quot;GetSessionTokenResult&quot;,&quot;type&quot;:&quot;structure&quot;,&quot;members&quot;:{&quot;Credentials&quot;:{&quot;shape&quot;:&quot;Sa&quot;}}},&quot;http&quot;:{}}},&quot;shapes&quot;:{&quot;Sa&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;AccessKeyId&quot;,&quot;SecretAccessKey&quot;,&quot;SessionToken&quot;,&quot;Expiration&quot;],&quot;members&quot;:{&quot;AccessKeyId&quot;:{},&quot;SecretAccessKey&quot;:{},&quot;SessionToken&quot;:{},&quot;Expiration&quot;:{&quot;type&quot;:&quot;timestamp&quot;}}},&quot;Sf&quot;:{&quot;type&quot;:&quot;structure&quot;,&quot;required&quot;:[&quot;AssumedRoleId&quot;,&quot;Arn&quot;],&quot;members&quot;:{&quot;AssumedRoleId&quot;:{},&quot;Arn&quot;:{}}}}};</td>\n      </tr>\n      <tr>\n        <td id=\"L31\" class=\"blob-num js-line-number\" data-line-number=\"31\"></td>\n        <td id=\"LC31\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L32\" class=\"blob-num js-line-number\" data-line-number=\"32\"></td>\n        <td id=\"LC32\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./http/xhr<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">12</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./services/sts<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">35</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./xml/browser_parser<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">45</span>}],<span class=\"pl-c1\">2</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L33\" class=\"blob-num js-line-number\" data-line-number=\"33\"></td>\n        <td id=\"LC33\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L34\" class=\"blob-num js-line-number\" data-line-number=\"34\"></td>\n        <td id=\"LC34\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./credentials<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L35\" class=\"blob-num js-line-number\" data-line-number=\"35\"></td>\n        <td id=\"LC35\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./credentials/credential_provider_chain<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L36\" class=\"blob-num js-line-number\" data-line-number=\"36\"></td>\n        <td id=\"LC36\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L37\" class=\"blob-num js-line-number\" data-line-number=\"37\"></td>\n        <td id=\"LC37\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L38\" class=\"blob-num js-line-number\" data-line-number=\"38\"></td>\n        <td id=\"LC38\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Config</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L39\" class=\"blob-num js-line-number\" data-line-number=\"39\"></td>\n        <td id=\"LC39\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L40\" class=\"blob-num js-line-number\" data-line-number=\"40\"></td>\n        <td id=\"LC40\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L41\" class=\"blob-num js-line-number\" data-line-number=\"41\"></td>\n        <td id=\"LC41\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L42\" class=\"blob-num js-line-number\" data-line-number=\"42\"></td>\n        <td id=\"LC42\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">Config</span>(<span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L43\" class=\"blob-num js-line-number\" data-line-number=\"43\"></td>\n        <td id=\"LC43\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (options <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) options <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L44\" class=\"blob-num js-line-number\" data-line-number=\"44\"></td>\n        <td id=\"LC44\" class=\"blob-code blob-code-inner js-file-line\">    options <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">extractCredentials</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L45\" class=\"blob-num js-line-number\" data-line-number=\"45\"></td>\n        <td id=\"LC45\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L46\" class=\"blob-num js-line-number\" data-line-number=\"46\"></td>\n        <td id=\"LC46\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">each</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">keys</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L47\" class=\"blob-num js-line-number\" data-line-number=\"47\"></td>\n        <td id=\"LC47\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">set</span>(key, options[key], value);</td>\n      </tr>\n      <tr>\n        <td id=\"L48\" class=\"blob-num js-line-number\" data-line-number=\"48\"></td>\n        <td id=\"LC48\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L49\" class=\"blob-num js-line-number\" data-line-number=\"49\"></td>\n        <td id=\"LC49\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L50\" class=\"blob-num js-line-number\" data-line-number=\"50\"></td>\n        <td id=\"LC50\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L51\" class=\"blob-num js-line-number\" data-line-number=\"51\"></td>\n        <td id=\"LC51\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L52\" class=\"blob-num js-line-number\" data-line-number=\"52\"></td>\n        <td id=\"LC52\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L53\" class=\"blob-num js-line-number\" data-line-number=\"53\"></td>\n        <td id=\"LC53\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L54\" class=\"blob-num js-line-number\" data-line-number=\"54\"></td>\n        <td id=\"LC54\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">getCredentials</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">getCredentials</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L55\" class=\"blob-num js-line-number\" data-line-number=\"55\"></td>\n        <td id=\"LC55\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L56\" class=\"blob-num js-line-number\" data-line-number=\"56\"></td>\n        <td id=\"LC56\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L57\" class=\"blob-num js-line-number\" data-line-number=\"57\"></td>\n        <td id=\"LC57\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">finish</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L58\" class=\"blob-num js-line-number\" data-line-number=\"58\"></td>\n        <td id=\"LC58\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">callback</span>(err, err <span class=\"pl-k\">?</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">:</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">credentials</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L59\" class=\"blob-num js-line-number\" data-line-number=\"59\"></td>\n        <td id=\"LC59\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L60\" class=\"blob-num js-line-number\" data-line-number=\"60\"></td>\n        <td id=\"LC60\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L61\" class=\"blob-num js-line-number\" data-line-number=\"61\"></td>\n        <td id=\"LC61\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">credError</span>(<span class=\"pl-smi\">msg</span>, <span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L62\" class=\"blob-num js-line-number\" data-line-number=\"62\"></td>\n        <td id=\"LC62\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.util</span>.<span class=\"pl-en\">error</span>(err <span class=\"pl-k\">||</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), {</td>\n      </tr>\n      <tr>\n        <td id=\"L63\" class=\"blob-num js-line-number\" data-line-number=\"63\"></td>\n        <td id=\"LC63\" class=\"blob-code blob-code-inner js-file-line\">        code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>CredentialsError<span class=\"pl-pds\">&#39;</span></span>, message<span class=\"pl-k\">:</span> msg</td>\n      </tr>\n      <tr>\n        <td id=\"L64\" class=\"blob-num js-line-number\" data-line-number=\"64\"></td>\n        <td id=\"LC64\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L65\" class=\"blob-num js-line-number\" data-line-number=\"65\"></td>\n        <td id=\"LC65\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L66\" class=\"blob-num js-line-number\" data-line-number=\"66\"></td>\n        <td id=\"LC66\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L67\" class=\"blob-num js-line-number\" data-line-number=\"67\"></td>\n        <td id=\"LC67\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">getAsyncCredentials</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L68\" class=\"blob-num js-line-number\" data-line-number=\"68\"></td>\n        <td id=\"LC68\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">credentials</span>.<span class=\"pl-en\">get</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L69\" class=\"blob-num js-line-number\" data-line-number=\"69\"></td>\n        <td id=\"LC69\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L70\" class=\"blob-num js-line-number\" data-line-number=\"70\"></td>\n        <td id=\"LC70\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> msg <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Could not load credentials from <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L71\" class=\"blob-num js-line-number\" data-line-number=\"71\"></td>\n        <td id=\"LC71\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">credentials</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L72\" class=\"blob-num js-line-number\" data-line-number=\"72\"></td>\n        <td id=\"LC72\" class=\"blob-code blob-code-inner js-file-line\">          err <span class=\"pl-k\">=</span> <span class=\"pl-en\">credError</span>(msg, err);</td>\n      </tr>\n      <tr>\n        <td id=\"L73\" class=\"blob-num js-line-number\" data-line-number=\"73\"></td>\n        <td id=\"LC73\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L74\" class=\"blob-num js-line-number\" data-line-number=\"74\"></td>\n        <td id=\"LC74\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">finish</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L75\" class=\"blob-num js-line-number\" data-line-number=\"75\"></td>\n        <td id=\"LC75\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L76\" class=\"blob-num js-line-number\" data-line-number=\"76\"></td>\n        <td id=\"LC76\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L77\" class=\"blob-num js-line-number\" data-line-number=\"77\"></td>\n        <td id=\"LC77\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L78\" class=\"blob-num js-line-number\" data-line-number=\"78\"></td>\n        <td id=\"LC78\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">getStaticCredentials</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L79\" class=\"blob-num js-line-number\" data-line-number=\"79\"></td>\n        <td id=\"LC79\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> err <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L80\" class=\"blob-num js-line-number\" data-line-number=\"80\"></td>\n        <td id=\"LC80\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">secretAccessKey</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L81\" class=\"blob-num js-line-number\" data-line-number=\"81\"></td>\n        <td id=\"LC81\" class=\"blob-code blob-code-inner js-file-line\">        err <span class=\"pl-k\">=</span> <span class=\"pl-en\">credError</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Missing credentials<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L82\" class=\"blob-num js-line-number\" data-line-number=\"82\"></td>\n        <td id=\"LC82\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L83\" class=\"blob-num js-line-number\" data-line-number=\"83\"></td>\n        <td id=\"LC83\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">finish</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L84\" class=\"blob-num js-line-number\" data-line-number=\"84\"></td>\n        <td id=\"LC84\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L85\" class=\"blob-num js-line-number\" data-line-number=\"85\"></td>\n        <td id=\"LC85\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L86\" class=\"blob-num js-line-number\" data-line-number=\"86\"></td>\n        <td id=\"LC86\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">credentials</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L87\" class=\"blob-num js-line-number\" data-line-number=\"87\"></td>\n        <td id=\"LC87\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">get</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L88\" class=\"blob-num js-line-number\" data-line-number=\"88\"></td>\n        <td id=\"LC88\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">getAsyncCredentials</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L89\" class=\"blob-num js-line-number\" data-line-number=\"89\"></td>\n        <td id=\"LC89\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> { <span class=\"pl-c\">// static credentials</span></td>\n      </tr>\n      <tr>\n        <td id=\"L90\" class=\"blob-num js-line-number\" data-line-number=\"90\"></td>\n        <td id=\"LC90\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">getStaticCredentials</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L91\" class=\"blob-num js-line-number\" data-line-number=\"91\"></td>\n        <td id=\"LC91\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L92\" class=\"blob-num js-line-number\" data-line-number=\"92\"></td>\n        <td id=\"LC92\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">credentialProvider</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L93\" class=\"blob-num js-line-number\" data-line-number=\"93\"></td>\n        <td id=\"LC93\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">credentialProvider</span>.<span class=\"pl-en\">resolve</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">creds</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L94\" class=\"blob-num js-line-number\" data-line-number=\"94\"></td>\n        <td id=\"LC94\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L95\" class=\"blob-num js-line-number\" data-line-number=\"95\"></td>\n        <td id=\"LC95\" class=\"blob-code blob-code-inner js-file-line\">          err <span class=\"pl-k\">=</span> <span class=\"pl-en\">credError</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Could not load credentials from any providers<span class=\"pl-pds\">&#39;</span></span>, err);</td>\n      </tr>\n      <tr>\n        <td id=\"L96\" class=\"blob-num js-line-number\" data-line-number=\"96\"></td>\n        <td id=\"LC96\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L97\" class=\"blob-num js-line-number\" data-line-number=\"97\"></td>\n        <td id=\"LC97\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">credentials</span> <span class=\"pl-k\">=</span> creds;</td>\n      </tr>\n      <tr>\n        <td id=\"L98\" class=\"blob-num js-line-number\" data-line-number=\"98\"></td>\n        <td id=\"LC98\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">finish</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L99\" class=\"blob-num js-line-number\" data-line-number=\"99\"></td>\n        <td id=\"LC99\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L100\" class=\"blob-num js-line-number\" data-line-number=\"100\"></td>\n        <td id=\"LC100\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L101\" class=\"blob-num js-line-number\" data-line-number=\"101\"></td>\n        <td id=\"LC101\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">finish</span>(<span class=\"pl-en\">credError</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>No credentials to load<span class=\"pl-pds\">&#39;</span></span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L102\" class=\"blob-num js-line-number\" data-line-number=\"102\"></td>\n        <td id=\"LC102\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L103\" class=\"blob-num js-line-number\" data-line-number=\"103\"></td>\n        <td id=\"LC103\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L104\" class=\"blob-num js-line-number\" data-line-number=\"104\"></td>\n        <td id=\"LC104\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L105\" class=\"blob-num js-line-number\" data-line-number=\"105\"></td>\n        <td id=\"LC105\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L106\" class=\"blob-num js-line-number\" data-line-number=\"106\"></td>\n        <td id=\"LC106\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L107\" class=\"blob-num js-line-number\" data-line-number=\"107\"></td>\n        <td id=\"LC107\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L108\" class=\"blob-num js-line-number\" data-line-number=\"108\"></td>\n        <td id=\"LC108\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">update</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">update</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">allowUnknownKeys</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L109\" class=\"blob-num js-line-number\" data-line-number=\"109\"></td>\n        <td id=\"LC109\" class=\"blob-code blob-code-inner js-file-line\">    allowUnknownKeys <span class=\"pl-k\">=</span> allowUnknownKeys <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L110\" class=\"blob-num js-line-number\" data-line-number=\"110\"></td>\n        <td id=\"LC110\" class=\"blob-code blob-code-inner js-file-line\">    options <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">extractCredentials</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L111\" class=\"blob-num js-line-number\" data-line-number=\"111\"></td>\n        <td id=\"LC111\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">each</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, options, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L112\" class=\"blob-num js-line-number\" data-line-number=\"112\"></td>\n        <td id=\"LC112\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (allowUnknownKeys <span class=\"pl-k\">||</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">keys</span>.<span class=\"pl-en\">hasOwnProperty</span>(key) <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L113\" class=\"blob-num js-line-number\" data-line-number=\"113\"></td>\n        <td id=\"LC113\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>.<span class=\"pl-en\">hasService</span>(key)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L114\" class=\"blob-num js-line-number\" data-line-number=\"114\"></td>\n        <td id=\"LC114\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">set</span>(key, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L115\" class=\"blob-num js-line-number\" data-line-number=\"115\"></td>\n        <td id=\"LC115\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L116\" class=\"blob-num js-line-number\" data-line-number=\"116\"></td>\n        <td id=\"LC116\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L117\" class=\"blob-num js-line-number\" data-line-number=\"117\"></td>\n        <td id=\"LC117\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L118\" class=\"blob-num js-line-number\" data-line-number=\"118\"></td>\n        <td id=\"LC118\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L119\" class=\"blob-num js-line-number\" data-line-number=\"119\"></td>\n        <td id=\"LC119\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L120\" class=\"blob-num js-line-number\" data-line-number=\"120\"></td>\n        <td id=\"LC120\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">loadFromPath</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">loadFromPath</span>(<span class=\"pl-smi\">path</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L121\" class=\"blob-num js-line-number\" data-line-number=\"121\"></td>\n        <td id=\"LC121\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">clear</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L122\" class=\"blob-num js-line-number\" data-line-number=\"122\"></td>\n        <td id=\"LC122\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L123\" class=\"blob-num js-line-number\" data-line-number=\"123\"></td>\n        <td id=\"LC123\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> options <span class=\"pl-k\">=</span> <span class=\"pl-c1\">JSON</span>.<span class=\"pl-c1\">parse</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">readFileSync</span>(path));</td>\n      </tr>\n      <tr>\n        <td id=\"L124\" class=\"blob-num js-line-number\" data-line-number=\"124\"></td>\n        <td id=\"LC124\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> fileSystemCreds <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.FileSystemCredentials</span>(path);</td>\n      </tr>\n      <tr>\n        <td id=\"L125\" class=\"blob-num js-line-number\" data-line-number=\"125\"></td>\n        <td id=\"LC125\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> chain <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.CredentialProviderChain</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L126\" class=\"blob-num js-line-number\" data-line-number=\"126\"></td>\n        <td id=\"LC126\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">chain</span>.<span class=\"pl-smi\">providers</span>.<span class=\"pl-c1\">unshift</span>(fileSystemCreds);</td>\n      </tr>\n      <tr>\n        <td id=\"L127\" class=\"blob-num js-line-number\" data-line-number=\"127\"></td>\n        <td id=\"LC127\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">chain</span>.<span class=\"pl-en\">resolve</span>(<span class=\"pl-k\">function</span> (<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">creds</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L128\" class=\"blob-num js-line-number\" data-line-number=\"128\"></td>\n        <td id=\"LC128\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (err) <span class=\"pl-k\">throw</span> err;</td>\n      </tr>\n      <tr>\n        <td id=\"L129\" class=\"blob-num js-line-number\" data-line-number=\"129\"></td>\n        <td id=\"LC129\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">else</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">credentials</span> <span class=\"pl-k\">=</span> creds;</td>\n      </tr>\n      <tr>\n        <td id=\"L130\" class=\"blob-num js-line-number\" data-line-number=\"130\"></td>\n        <td id=\"LC130\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L131\" class=\"blob-num js-line-number\" data-line-number=\"131\"></td>\n        <td id=\"LC131\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L132\" class=\"blob-num js-line-number\" data-line-number=\"132\"></td>\n        <td id=\"LC132\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L133\" class=\"blob-num js-line-number\" data-line-number=\"133\"></td>\n        <td id=\"LC133\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L134\" class=\"blob-num js-line-number\" data-line-number=\"134\"></td>\n        <td id=\"LC134\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L135\" class=\"blob-num js-line-number\" data-line-number=\"135\"></td>\n        <td id=\"LC135\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L136\" class=\"blob-num js-line-number\" data-line-number=\"136\"></td>\n        <td id=\"LC136\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L137\" class=\"blob-num js-line-number\" data-line-number=\"137\"></td>\n        <td id=\"LC137\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L138\" class=\"blob-num js-line-number\" data-line-number=\"138\"></td>\n        <td id=\"LC138\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">clear</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">clear</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L139\" class=\"blob-num js-line-number\" data-line-number=\"139\"></td>\n        <td id=\"LC139\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L140\" class=\"blob-num js-line-number\" data-line-number=\"140\"></td>\n        <td id=\"LC140\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">each</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">keys</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L141\" class=\"blob-num js-line-number\" data-line-number=\"141\"></td>\n        <td id=\"LC141\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">delete</span> <span class=\"pl-v\">this</span>[key];</td>\n      </tr>\n      <tr>\n        <td id=\"L142\" class=\"blob-num js-line-number\" data-line-number=\"142\"></td>\n        <td id=\"LC142\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L143\" class=\"blob-num js-line-number\" data-line-number=\"143\"></td>\n        <td id=\"LC143\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L144\" class=\"blob-num js-line-number\" data-line-number=\"144\"></td>\n        <td id=\"LC144\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">set</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>credentials<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">undefined</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L145\" class=\"blob-num js-line-number\" data-line-number=\"145\"></td>\n        <td id=\"LC145\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">set</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>credentialProvider<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">undefined</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L146\" class=\"blob-num js-line-number\" data-line-number=\"146\"></td>\n        <td id=\"LC146\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L147\" class=\"blob-num js-line-number\" data-line-number=\"147\"></td>\n        <td id=\"LC147\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L148\" class=\"blob-num js-line-number\" data-line-number=\"148\"></td>\n        <td id=\"LC148\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L149\" class=\"blob-num js-line-number\" data-line-number=\"149\"></td>\n        <td id=\"LC149\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">set</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">set</span>(<span class=\"pl-smi\">property</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">defaultValue</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L150\" class=\"blob-num js-line-number\" data-line-number=\"150\"></td>\n        <td id=\"LC150\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L151\" class=\"blob-num js-line-number\" data-line-number=\"151\"></td>\n        <td id=\"LC151\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (defaultValue <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L152\" class=\"blob-num js-line-number\" data-line-number=\"152\"></td>\n        <td id=\"LC152\" class=\"blob-code blob-code-inner js-file-line\">        defaultValue <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">keys</span>[property];</td>\n      </tr>\n      <tr>\n        <td id=\"L153\" class=\"blob-num js-line-number\" data-line-number=\"153\"></td>\n        <td id=\"LC153\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L154\" class=\"blob-num js-line-number\" data-line-number=\"154\"></td>\n        <td id=\"LC154\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> defaultValue <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L155\" class=\"blob-num js-line-number\" data-line-number=\"155\"></td>\n        <td id=\"LC155\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>[property] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">defaultValue</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L156\" class=\"blob-num js-line-number\" data-line-number=\"156\"></td>\n        <td id=\"LC156\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L157\" class=\"blob-num js-line-number\" data-line-number=\"157\"></td>\n        <td id=\"LC157\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>[property] <span class=\"pl-k\">=</span> defaultValue;</td>\n      </tr>\n      <tr>\n        <td id=\"L158\" class=\"blob-num js-line-number\" data-line-number=\"158\"></td>\n        <td id=\"LC158\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L159\" class=\"blob-num js-line-number\" data-line-number=\"159\"></td>\n        <td id=\"LC159\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (property <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpOptions<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>[property]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L160\" class=\"blob-num js-line-number\" data-line-number=\"160\"></td>\n        <td id=\"LC160\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>[property] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">merge</span>(<span class=\"pl-v\">this</span>[property], value);</td>\n      </tr>\n      <tr>\n        <td id=\"L161\" class=\"blob-num js-line-number\" data-line-number=\"161\"></td>\n        <td id=\"LC161\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L162\" class=\"blob-num js-line-number\" data-line-number=\"162\"></td>\n        <td id=\"LC162\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>[property] <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L163\" class=\"blob-num js-line-number\" data-line-number=\"163\"></td>\n        <td id=\"LC163\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L164\" class=\"blob-num js-line-number\" data-line-number=\"164\"></td>\n        <td id=\"LC164\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L165\" class=\"blob-num js-line-number\" data-line-number=\"165\"></td>\n        <td id=\"LC165\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L166\" class=\"blob-num js-line-number\" data-line-number=\"166\"></td>\n        <td id=\"LC166\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L167\" class=\"blob-num js-line-number\" data-line-number=\"167\"></td>\n        <td id=\"LC167\" class=\"blob-code blob-code-inner js-file-line\">  keys<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L168\" class=\"blob-num js-line-number\" data-line-number=\"168\"></td>\n        <td id=\"LC168\" class=\"blob-code blob-code-inner js-file-line\">    credentials<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L169\" class=\"blob-num js-line-number\" data-line-number=\"169\"></td>\n        <td id=\"LC169\" class=\"blob-code blob-code-inner js-file-line\">    credentialProvider<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L170\" class=\"blob-num js-line-number\" data-line-number=\"170\"></td>\n        <td id=\"LC170\" class=\"blob-code blob-code-inner js-file-line\">    region<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L171\" class=\"blob-num js-line-number\" data-line-number=\"171\"></td>\n        <td id=\"LC171\" class=\"blob-code blob-code-inner js-file-line\">    logger<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L172\" class=\"blob-num js-line-number\" data-line-number=\"172\"></td>\n        <td id=\"LC172\" class=\"blob-code blob-code-inner js-file-line\">    apiVersions<span class=\"pl-k\">:</span> {},</td>\n      </tr>\n      <tr>\n        <td id=\"L173\" class=\"blob-num js-line-number\" data-line-number=\"173\"></td>\n        <td id=\"LC173\" class=\"blob-code blob-code-inner js-file-line\">    apiVersion<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L174\" class=\"blob-num js-line-number\" data-line-number=\"174\"></td>\n        <td id=\"LC174\" class=\"blob-code blob-code-inner js-file-line\">    endpoint<span class=\"pl-k\">:</span> <span class=\"pl-c1\">undefined</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L175\" class=\"blob-num js-line-number\" data-line-number=\"175\"></td>\n        <td id=\"LC175\" class=\"blob-code blob-code-inner js-file-line\">    httpOptions<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L176\" class=\"blob-num js-line-number\" data-line-number=\"176\"></td>\n        <td id=\"LC176\" class=\"blob-code blob-code-inner js-file-line\">      timeout<span class=\"pl-k\">:</span> <span class=\"pl-c1\">120000</span></td>\n      </tr>\n      <tr>\n        <td id=\"L177\" class=\"blob-num js-line-number\" data-line-number=\"177\"></td>\n        <td id=\"LC177\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L178\" class=\"blob-num js-line-number\" data-line-number=\"178\"></td>\n        <td id=\"LC178\" class=\"blob-code blob-code-inner js-file-line\">    maxRetries<span class=\"pl-k\">:</span> <span class=\"pl-c1\">undefined</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L179\" class=\"blob-num js-line-number\" data-line-number=\"179\"></td>\n        <td id=\"LC179\" class=\"blob-code blob-code-inner js-file-line\">    maxRedirects<span class=\"pl-k\">:</span> <span class=\"pl-c1\">10</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L180\" class=\"blob-num js-line-number\" data-line-number=\"180\"></td>\n        <td id=\"LC180\" class=\"blob-code blob-code-inner js-file-line\">    paramValidation<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L181\" class=\"blob-num js-line-number\" data-line-number=\"181\"></td>\n        <td id=\"LC181\" class=\"blob-code blob-code-inner js-file-line\">    sslEnabled<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L182\" class=\"blob-num js-line-number\" data-line-number=\"182\"></td>\n        <td id=\"LC182\" class=\"blob-code blob-code-inner js-file-line\">    s3ForcePathStyle<span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L183\" class=\"blob-num js-line-number\" data-line-number=\"183\"></td>\n        <td id=\"LC183\" class=\"blob-code blob-code-inner js-file-line\">    s3BucketEndpoint<span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L184\" class=\"blob-num js-line-number\" data-line-number=\"184\"></td>\n        <td id=\"LC184\" class=\"blob-code blob-code-inner js-file-line\">    computeChecksums<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L185\" class=\"blob-num js-line-number\" data-line-number=\"185\"></td>\n        <td id=\"LC185\" class=\"blob-code blob-code-inner js-file-line\">    convertResponseTypes<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L186\" class=\"blob-num js-line-number\" data-line-number=\"186\"></td>\n        <td id=\"LC186\" class=\"blob-code blob-code-inner js-file-line\">    correctClockSkew<span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L187\" class=\"blob-num js-line-number\" data-line-number=\"187\"></td>\n        <td id=\"LC187\" class=\"blob-code blob-code-inner js-file-line\">    customUserAgent<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L188\" class=\"blob-num js-line-number\" data-line-number=\"188\"></td>\n        <td id=\"LC188\" class=\"blob-code blob-code-inner js-file-line\">    dynamoDbCrc32<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L189\" class=\"blob-num js-line-number\" data-line-number=\"189\"></td>\n        <td id=\"LC189\" class=\"blob-code blob-code-inner js-file-line\">    systemClockOffset<span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L190\" class=\"blob-num js-line-number\" data-line-number=\"190\"></td>\n        <td id=\"LC190\" class=\"blob-code blob-code-inner js-file-line\">    signatureVersion<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L191\" class=\"blob-num js-line-number\" data-line-number=\"191\"></td>\n        <td id=\"LC191\" class=\"blob-code blob-code-inner js-file-line\">    signatureCache<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L192\" class=\"blob-num js-line-number\" data-line-number=\"192\"></td>\n        <td id=\"LC192\" class=\"blob-code blob-code-inner js-file-line\">    retryDelayOptions<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L193\" class=\"blob-num js-line-number\" data-line-number=\"193\"></td>\n        <td id=\"LC193\" class=\"blob-code blob-code-inner js-file-line\">      base<span class=\"pl-k\">:</span> <span class=\"pl-c1\">100</span></td>\n      </tr>\n      <tr>\n        <td id=\"L194\" class=\"blob-num js-line-number\" data-line-number=\"194\"></td>\n        <td id=\"LC194\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L195\" class=\"blob-num js-line-number\" data-line-number=\"195\"></td>\n        <td id=\"LC195\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L196\" class=\"blob-num js-line-number\" data-line-number=\"196\"></td>\n        <td id=\"LC196\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L197\" class=\"blob-num js-line-number\" data-line-number=\"197\"></td>\n        <td id=\"LC197\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L198\" class=\"blob-num js-line-number\" data-line-number=\"198\"></td>\n        <td id=\"LC198\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">extractCredentials</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">extractCredentials</span>(<span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L199\" class=\"blob-num js-line-number\" data-line-number=\"199\"></td>\n        <td id=\"LC199\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">secretAccessKey</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L200\" class=\"blob-num js-line-number\" data-line-number=\"200\"></td>\n        <td id=\"LC200\" class=\"blob-code blob-code-inner js-file-line\">      options <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">copy</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L201\" class=\"blob-num js-line-number\" data-line-number=\"201\"></td>\n        <td id=\"LC201\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">credentials</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.Credentials</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L202\" class=\"blob-num js-line-number\" data-line-number=\"202\"></td>\n        <td id=\"LC202\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L203\" class=\"blob-num js-line-number\" data-line-number=\"203\"></td>\n        <td id=\"LC203\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> options;</td>\n      </tr>\n      <tr>\n        <td id=\"L204\" class=\"blob-num js-line-number\" data-line-number=\"204\"></td>\n        <td id=\"LC204\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L205\" class=\"blob-num js-line-number\" data-line-number=\"205\"></td>\n        <td id=\"LC205\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L206\" class=\"blob-num js-line-number\" data-line-number=\"206\"></td>\n        <td id=\"LC206\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L207\" class=\"blob-num js-line-number\" data-line-number=\"207\"></td>\n        <td id=\"LC207\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L208\" class=\"blob-num js-line-number\" data-line-number=\"208\"></td>\n        <td id=\"LC208\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.Config</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L209\" class=\"blob-num js-line-number\" data-line-number=\"209\"></td>\n        <td id=\"LC209\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L210\" class=\"blob-num js-line-number\" data-line-number=\"210\"></td>\n        <td id=\"LC210\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./credentials<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">4</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./credentials/credential_provider_chain<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">6</span>}],<span class=\"pl-c1\">3</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L211\" class=\"blob-num js-line-number\" data-line-number=\"211\"></td>\n        <td id=\"LC211\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L212\" class=\"blob-num js-line-number\" data-line-number=\"212\"></td>\n        <td id=\"LC212\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> { util<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./util<span class=\"pl-pds\">&#39;</span></span>) };</td>\n      </tr>\n      <tr>\n        <td id=\"L213\" class=\"blob-num js-line-number\" data-line-number=\"213\"></td>\n        <td id=\"LC213\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L214\" class=\"blob-num js-line-number\" data-line-number=\"214\"></td>\n        <td id=\"LC214\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L215\" class=\"blob-num js-line-number\" data-line-number=\"215\"></td>\n        <td id=\"LC215\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> _hidden <span class=\"pl-k\">=</span> {}; <span class=\"pl-smi\">_hidden</span>.<span class=\"pl-c1\">toString</span>(); <span class=\"pl-c\">// hack to parse macro</span></td>\n      </tr>\n      <tr>\n        <td id=\"L216\" class=\"blob-num js-line-number\" data-line-number=\"216\"></td>\n        <td id=\"LC216\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L217\" class=\"blob-num js-line-number\" data-line-number=\"217\"></td>\n        <td id=\"LC217\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L218\" class=\"blob-num js-line-number\" data-line-number=\"218\"></td>\n        <td id=\"LC218\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L219\" class=\"blob-num js-line-number\" data-line-number=\"219\"></td>\n        <td id=\"LC219\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">update</span>(<span class=\"pl-c1\">AWS</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L220\" class=\"blob-num js-line-number\" data-line-number=\"220\"></td>\n        <td id=\"LC220\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L221\" class=\"blob-num js-line-number\" data-line-number=\"221\"></td>\n        <td id=\"LC221\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L222\" class=\"blob-num js-line-number\" data-line-number=\"222\"></td>\n        <td id=\"LC222\" class=\"blob-code blob-code-inner js-file-line\">  VERSION<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>2.2.40<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L223\" class=\"blob-num js-line-number\" data-line-number=\"223\"></td>\n        <td id=\"LC223\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L224\" class=\"blob-num js-line-number\" data-line-number=\"224\"></td>\n        <td id=\"LC224\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L225\" class=\"blob-num js-line-number\" data-line-number=\"225\"></td>\n        <td id=\"LC225\" class=\"blob-code blob-code-inner js-file-line\">  Signers<span class=\"pl-k\">:</span> {},</td>\n      </tr>\n      <tr>\n        <td id=\"L226\" class=\"blob-num js-line-number\" data-line-number=\"226\"></td>\n        <td id=\"LC226\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L227\" class=\"blob-num js-line-number\" data-line-number=\"227\"></td>\n        <td id=\"LC227\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L228\" class=\"blob-num js-line-number\" data-line-number=\"228\"></td>\n        <td id=\"LC228\" class=\"blob-code blob-code-inner js-file-line\">  Protocol<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L229\" class=\"blob-num js-line-number\" data-line-number=\"229\"></td>\n        <td id=\"LC229\" class=\"blob-code blob-code-inner js-file-line\">    Json<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./protocol/json<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L230\" class=\"blob-num js-line-number\" data-line-number=\"230\"></td>\n        <td id=\"LC230\" class=\"blob-code blob-code-inner js-file-line\">    Query<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./protocol/query<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L231\" class=\"blob-num js-line-number\" data-line-number=\"231\"></td>\n        <td id=\"LC231\" class=\"blob-code blob-code-inner js-file-line\">    Rest<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./protocol/rest<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L232\" class=\"blob-num js-line-number\" data-line-number=\"232\"></td>\n        <td id=\"LC232\" class=\"blob-code blob-code-inner js-file-line\">    RestJson<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./protocol/rest_json<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L233\" class=\"blob-num js-line-number\" data-line-number=\"233\"></td>\n        <td id=\"LC233\" class=\"blob-code blob-code-inner js-file-line\">    RestXml<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./protocol/rest_xml<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L234\" class=\"blob-num js-line-number\" data-line-number=\"234\"></td>\n        <td id=\"LC234\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L235\" class=\"blob-num js-line-number\" data-line-number=\"235\"></td>\n        <td id=\"LC235\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L236\" class=\"blob-num js-line-number\" data-line-number=\"236\"></td>\n        <td id=\"LC236\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L237\" class=\"blob-num js-line-number\" data-line-number=\"237\"></td>\n        <td id=\"LC237\" class=\"blob-code blob-code-inner js-file-line\">  XML<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L238\" class=\"blob-num js-line-number\" data-line-number=\"238\"></td>\n        <td id=\"LC238\" class=\"blob-code blob-code-inner js-file-line\">    Builder<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./xml/builder<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L239\" class=\"blob-num js-line-number\" data-line-number=\"239\"></td>\n        <td id=\"LC239\" class=\"blob-code blob-code-inner js-file-line\">    Parser<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span> <span class=\"pl-c\">// conditionally set based on environment</span></td>\n      </tr>\n      <tr>\n        <td id=\"L240\" class=\"blob-num js-line-number\" data-line-number=\"240\"></td>\n        <td id=\"LC240\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L241\" class=\"blob-num js-line-number\" data-line-number=\"241\"></td>\n        <td id=\"LC241\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L242\" class=\"blob-num js-line-number\" data-line-number=\"242\"></td>\n        <td id=\"LC242\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L243\" class=\"blob-num js-line-number\" data-line-number=\"243\"></td>\n        <td id=\"LC243\" class=\"blob-code blob-code-inner js-file-line\">  JSON<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L244\" class=\"blob-num js-line-number\" data-line-number=\"244\"></td>\n        <td id=\"LC244\" class=\"blob-code blob-code-inner js-file-line\">    Builder<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./json/builder<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L245\" class=\"blob-num js-line-number\" data-line-number=\"245\"></td>\n        <td id=\"LC245\" class=\"blob-code blob-code-inner js-file-line\">    Parser<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./json/parser<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L246\" class=\"blob-num js-line-number\" data-line-number=\"246\"></td>\n        <td id=\"LC246\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L247\" class=\"blob-num js-line-number\" data-line-number=\"247\"></td>\n        <td id=\"LC247\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L248\" class=\"blob-num js-line-number\" data-line-number=\"248\"></td>\n        <td id=\"LC248\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L249\" class=\"blob-num js-line-number\" data-line-number=\"249\"></td>\n        <td id=\"LC249\" class=\"blob-code blob-code-inner js-file-line\">  Model<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L250\" class=\"blob-num js-line-number\" data-line-number=\"250\"></td>\n        <td id=\"LC250\" class=\"blob-code blob-code-inner js-file-line\">    Api<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./model/api<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L251\" class=\"blob-num js-line-number\" data-line-number=\"251\"></td>\n        <td id=\"LC251\" class=\"blob-code blob-code-inner js-file-line\">    Operation<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./model/operation<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L252\" class=\"blob-num js-line-number\" data-line-number=\"252\"></td>\n        <td id=\"LC252\" class=\"blob-code blob-code-inner js-file-line\">    Shape<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./model/shape<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L253\" class=\"blob-num js-line-number\" data-line-number=\"253\"></td>\n        <td id=\"LC253\" class=\"blob-code blob-code-inner js-file-line\">    Paginator<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./model/paginator<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L254\" class=\"blob-num js-line-number\" data-line-number=\"254\"></td>\n        <td id=\"LC254\" class=\"blob-code blob-code-inner js-file-line\">    ResourceWaiter<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./model/resource_waiter<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L255\" class=\"blob-num js-line-number\" data-line-number=\"255\"></td>\n        <td id=\"LC255\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L256\" class=\"blob-num js-line-number\" data-line-number=\"256\"></td>\n        <td id=\"LC256\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L257\" class=\"blob-num js-line-number\" data-line-number=\"257\"></td>\n        <td id=\"LC257\" class=\"blob-code blob-code-inner js-file-line\">  util<span class=\"pl-k\">:</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./util<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L258\" class=\"blob-num js-line-number\" data-line-number=\"258\"></td>\n        <td id=\"LC258\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L259\" class=\"blob-num js-line-number\" data-line-number=\"259\"></td>\n        <td id=\"LC259\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L260\" class=\"blob-num js-line-number\" data-line-number=\"260\"></td>\n        <td id=\"LC260\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">apiLoader</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>() { <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>No API loader set<span class=\"pl-pds\">&#39;</span></span>); }</td>\n      </tr>\n      <tr>\n        <td id=\"L261\" class=\"blob-num js-line-number\" data-line-number=\"261\"></td>\n        <td id=\"LC261\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L262\" class=\"blob-num js-line-number\" data-line-number=\"262\"></td>\n        <td id=\"LC262\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L263\" class=\"blob-num js-line-number\" data-line-number=\"263\"></td>\n        <td id=\"LC263\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./service<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L264\" class=\"blob-num js-line-number\" data-line-number=\"264\"></td>\n        <td id=\"LC264\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L265\" class=\"blob-num js-line-number\" data-line-number=\"265\"></td>\n        <td id=\"LC265\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./credentials<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L266\" class=\"blob-num js-line-number\" data-line-number=\"266\"></td>\n        <td id=\"LC266\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./credentials/credential_provider_chain<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L267\" class=\"blob-num js-line-number\" data-line-number=\"267\"></td>\n        <td id=\"LC267\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./credentials/temporary_credentials<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L268\" class=\"blob-num js-line-number\" data-line-number=\"268\"></td>\n        <td id=\"LC268\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./credentials/web_identity_credentials<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L269\" class=\"blob-num js-line-number\" data-line-number=\"269\"></td>\n        <td id=\"LC269\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./credentials/cognito_identity_credentials<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L270\" class=\"blob-num js-line-number\" data-line-number=\"270\"></td>\n        <td id=\"LC270\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./credentials/saml_credentials<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L271\" class=\"blob-num js-line-number\" data-line-number=\"271\"></td>\n        <td id=\"LC271\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L272\" class=\"blob-num js-line-number\" data-line-number=\"272\"></td>\n        <td id=\"LC272\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./config<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L273\" class=\"blob-num js-line-number\" data-line-number=\"273\"></td>\n        <td id=\"LC273\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./http<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L274\" class=\"blob-num js-line-number\" data-line-number=\"274\"></td>\n        <td id=\"LC274\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./sequential_executor<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L275\" class=\"blob-num js-line-number\" data-line-number=\"275\"></td>\n        <td id=\"LC275\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./event_listeners<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L276\" class=\"blob-num js-line-number\" data-line-number=\"276\"></td>\n        <td id=\"LC276\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./request<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L277\" class=\"blob-num js-line-number\" data-line-number=\"277\"></td>\n        <td id=\"LC277\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./response<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L278\" class=\"blob-num js-line-number\" data-line-number=\"278\"></td>\n        <td id=\"LC278\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./resource_waiter<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L279\" class=\"blob-num js-line-number\" data-line-number=\"279\"></td>\n        <td id=\"LC279\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./signers/request_signer<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L280\" class=\"blob-num js-line-number\" data-line-number=\"280\"></td>\n        <td id=\"LC280\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./param_validator<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L281\" class=\"blob-num js-line-number\" data-line-number=\"281\"></td>\n        <td id=\"LC281\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L282\" class=\"blob-num js-line-number\" data-line-number=\"282\"></td>\n        <td id=\"LC282\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L283\" class=\"blob-num js-line-number\" data-line-number=\"283\"></td>\n        <td id=\"LC283\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">events</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.SequentialExecutor</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L284\" class=\"blob-num js-line-number\" data-line-number=\"284\"></td>\n        <td id=\"LC284\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L285\" class=\"blob-num js-line-number\" data-line-number=\"285\"></td>\n        <td id=\"LC285\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./config<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">2</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./credentials<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">4</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./credentials/cognito_identity_credentials<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">5</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./credentials/credential_provider_chain<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">6</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./credentials/saml_credentials<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">7</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./credentials/temporary_credentials<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">8</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./credentials/web_identity_credentials<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">9</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./event_listeners<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">10</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./http<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">11</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./json/builder<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">13</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./json/parser<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">14</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./model/api<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">15</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./model/operation<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">17</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./model/paginator<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">18</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./model/resource_waiter<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">19</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./model/shape<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">20</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./param_validator<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">21</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./protocol/json<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">22</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./protocol/query<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">23</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./protocol/rest<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">24</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./protocol/rest_json<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">25</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./protocol/rest_xml<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">26</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./request<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">30</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./resource_waiter<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">31</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./response<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">32</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./sequential_executor<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">33</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./service<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">34</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./signers/request_signer<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">37</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./xml/builder<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">46</span>}],<span class=\"pl-c1\">4</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L286\" class=\"blob-num js-line-number\" data-line-number=\"286\"></td>\n        <td id=\"LC286\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L287\" class=\"blob-num js-line-number\" data-line-number=\"287\"></td>\n        <td id=\"LC287\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L288\" class=\"blob-num js-line-number\" data-line-number=\"288\"></td>\n        <td id=\"LC288\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L289\" class=\"blob-num js-line-number\" data-line-number=\"289\"></td>\n        <td id=\"LC289\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Credentials</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L290\" class=\"blob-num js-line-number\" data-line-number=\"290\"></td>\n        <td id=\"LC290\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L291\" class=\"blob-num js-line-number\" data-line-number=\"291\"></td>\n        <td id=\"LC291\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">Credentials</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L292\" class=\"blob-num js-line-number\" data-line-number=\"292\"></td>\n        <td id=\"LC292\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">hideProperties</span>(<span class=\"pl-v\">this</span>, [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>secretAccessKey<span class=\"pl-pds\">&#39;</span></span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L293\" class=\"blob-num js-line-number\" data-line-number=\"293\"></td>\n        <td id=\"LC293\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L294\" class=\"blob-num js-line-number\" data-line-number=\"294\"></td>\n        <td id=\"LC294\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expired</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L295\" class=\"blob-num js-line-number\" data-line-number=\"295\"></td>\n        <td id=\"LC295\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expireTime</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L296\" class=\"blob-num js-line-number\" data-line-number=\"296\"></td>\n        <td id=\"LC296\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">arguments</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L297\" class=\"blob-num js-line-number\" data-line-number=\"297\"></td>\n        <td id=\"LC297\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> creds <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">0</span>].<span class=\"pl-smi\">credentials</span> <span class=\"pl-k\">||</span> <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L298\" class=\"blob-num js-line-number\" data-line-number=\"298\"></td>\n        <td id=\"LC298\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">creds</span>.<span class=\"pl-smi\">accessKeyId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L299\" class=\"blob-num js-line-number\" data-line-number=\"299\"></td>\n        <td id=\"LC299\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">secretAccessKey</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">creds</span>.<span class=\"pl-smi\">secretAccessKey</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L300\" class=\"blob-num js-line-number\" data-line-number=\"300\"></td>\n        <td id=\"LC300\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sessionToken</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">creds</span>.<span class=\"pl-smi\">sessionToken</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L301\" class=\"blob-num js-line-number\" data-line-number=\"301\"></td>\n        <td id=\"LC301\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L302\" class=\"blob-num js-line-number\" data-line-number=\"302\"></td>\n        <td id=\"LC302\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L303\" class=\"blob-num js-line-number\" data-line-number=\"303\"></td>\n        <td id=\"LC303\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">secretAccessKey</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L304\" class=\"blob-num js-line-number\" data-line-number=\"304\"></td>\n        <td id=\"LC304\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sessionToken</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">2</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L305\" class=\"blob-num js-line-number\" data-line-number=\"305\"></td>\n        <td id=\"LC305\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L306\" class=\"blob-num js-line-number\" data-line-number=\"306\"></td>\n        <td id=\"LC306\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L307\" class=\"blob-num js-line-number\" data-line-number=\"307\"></td>\n        <td id=\"LC307\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L308\" class=\"blob-num js-line-number\" data-line-number=\"308\"></td>\n        <td id=\"LC308\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L309\" class=\"blob-num js-line-number\" data-line-number=\"309\"></td>\n        <td id=\"LC309\" class=\"blob-code blob-code-inner js-file-line\">  expiryWindow<span class=\"pl-k\">:</span> <span class=\"pl-c1\">15</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L310\" class=\"blob-num js-line-number\" data-line-number=\"310\"></td>\n        <td id=\"LC310\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L311\" class=\"blob-num js-line-number\" data-line-number=\"311\"></td>\n        <td id=\"LC311\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L312\" class=\"blob-num js-line-number\" data-line-number=\"312\"></td>\n        <td id=\"LC312\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">needsRefresh</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">needsRefresh</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L313\" class=\"blob-num js-line-number\" data-line-number=\"313\"></td>\n        <td id=\"LC313\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> currentTime <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-c1\">getDate</span>().<span class=\"pl-c1\">getTime</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L314\" class=\"blob-num js-line-number\" data-line-number=\"314\"></td>\n        <td id=\"LC314\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> adjustedTime <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>(currentTime <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expiryWindow</span> <span class=\"pl-k\">*</span> <span class=\"pl-c1\">1000</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L315\" class=\"blob-num js-line-number\" data-line-number=\"315\"></td>\n        <td id=\"LC315\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L316\" class=\"blob-num js-line-number\" data-line-number=\"316\"></td>\n        <td id=\"LC316\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expireTime</span> <span class=\"pl-k\">&amp;&amp;</span> adjustedTime <span class=\"pl-k\">&gt;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expireTime</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L317\" class=\"blob-num js-line-number\" data-line-number=\"317\"></td>\n        <td id=\"LC317\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L318\" class=\"blob-num js-line-number\" data-line-number=\"318\"></td>\n        <td id=\"LC318\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L319\" class=\"blob-num js-line-number\" data-line-number=\"319\"></td>\n        <td id=\"LC319\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expired</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">secretAccessKey</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L320\" class=\"blob-num js-line-number\" data-line-number=\"320\"></td>\n        <td id=\"LC320\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L321\" class=\"blob-num js-line-number\" data-line-number=\"321\"></td>\n        <td id=\"LC321\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L322\" class=\"blob-num js-line-number\" data-line-number=\"322\"></td>\n        <td id=\"LC322\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L323\" class=\"blob-num js-line-number\" data-line-number=\"323\"></td>\n        <td id=\"LC323\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L324\" class=\"blob-num js-line-number\" data-line-number=\"324\"></td>\n        <td id=\"LC324\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">get</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">get</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L325\" class=\"blob-num js-line-number\" data-line-number=\"325\"></td>\n        <td id=\"LC325\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L326\" class=\"blob-num js-line-number\" data-line-number=\"326\"></td>\n        <td id=\"LC326\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">needsRefresh</span>()) {</td>\n      </tr>\n      <tr>\n        <td id=\"L327\" class=\"blob-num js-line-number\" data-line-number=\"327\"></td>\n        <td id=\"LC327\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">refresh</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L328\" class=\"blob-num js-line-number\" data-line-number=\"328\"></td>\n        <td id=\"LC328\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>err) <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">expired</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>; <span class=\"pl-c\">// reset expired flag</span></td>\n      </tr>\n      <tr>\n        <td id=\"L329\" class=\"blob-num js-line-number\" data-line-number=\"329\"></td>\n        <td id=\"LC329\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (callback) <span class=\"pl-en\">callback</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L330\" class=\"blob-num js-line-number\" data-line-number=\"330\"></td>\n        <td id=\"LC330\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L331\" class=\"blob-num js-line-number\" data-line-number=\"331\"></td>\n        <td id=\"LC331\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (callback) {</td>\n      </tr>\n      <tr>\n        <td id=\"L332\" class=\"blob-num js-line-number\" data-line-number=\"332\"></td>\n        <td id=\"LC332\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">callback</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L333\" class=\"blob-num js-line-number\" data-line-number=\"333\"></td>\n        <td id=\"LC333\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L334\" class=\"blob-num js-line-number\" data-line-number=\"334\"></td>\n        <td id=\"LC334\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L335\" class=\"blob-num js-line-number\" data-line-number=\"335\"></td>\n        <td id=\"LC335\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L336\" class=\"blob-num js-line-number\" data-line-number=\"336\"></td>\n        <td id=\"LC336\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L337\" class=\"blob-num js-line-number\" data-line-number=\"337\"></td>\n        <td id=\"LC337\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">refresh</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">refresh</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L338\" class=\"blob-num js-line-number\" data-line-number=\"338\"></td>\n        <td id=\"LC338\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expired</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L339\" class=\"blob-num js-line-number\" data-line-number=\"339\"></td>\n        <td id=\"LC339\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">callback</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L340\" class=\"blob-num js-line-number\" data-line-number=\"340\"></td>\n        <td id=\"LC340\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L341\" class=\"blob-num js-line-number\" data-line-number=\"341\"></td>\n        <td id=\"LC341\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L342\" class=\"blob-num js-line-number\" data-line-number=\"342\"></td>\n        <td id=\"LC342\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L343\" class=\"blob-num js-line-number\" data-line-number=\"343\"></td>\n        <td id=\"LC343\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">5</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L344\" class=\"blob-num js-line-number\" data-line-number=\"344\"></td>\n        <td id=\"LC344\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L345\" class=\"blob-num js-line-number\" data-line-number=\"345\"></td>\n        <td id=\"LC345\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L346\" class=\"blob-num js-line-number\" data-line-number=\"346\"></td>\n        <td id=\"LC346\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L347\" class=\"blob-num js-line-number\" data-line-number=\"347\"></td>\n        <td id=\"LC347\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">CognitoIdentityCredentials</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">inherit</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Credentials</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L348\" class=\"blob-num js-line-number\" data-line-number=\"348\"></td>\n        <td id=\"LC348\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L349\" class=\"blob-num js-line-number\" data-line-number=\"349\"></td>\n        <td id=\"LC349\" class=\"blob-code blob-code-inner js-file-line\">  localStorageKey<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L350\" class=\"blob-num js-line-number\" data-line-number=\"350\"></td>\n        <td id=\"LC350\" class=\"blob-code blob-code-inner js-file-line\">    id<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>aws.cognito.identity-id.<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L351\" class=\"blob-num js-line-number\" data-line-number=\"351\"></td>\n        <td id=\"LC351\" class=\"blob-code blob-code-inner js-file-line\">    providers<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>aws.cognito.identity-providers.<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L352\" class=\"blob-num js-line-number\" data-line-number=\"352\"></td>\n        <td id=\"LC352\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L353\" class=\"blob-num js-line-number\" data-line-number=\"353\"></td>\n        <td id=\"LC353\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L354\" class=\"blob-num js-line-number\" data-line-number=\"354\"></td>\n        <td id=\"LC354\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L355\" class=\"blob-num js-line-number\" data-line-number=\"355\"></td>\n        <td id=\"LC355\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">CognitoIdentityCredentials</span>(<span class=\"pl-smi\">params</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L356\" class=\"blob-num js-line-number\" data-line-number=\"356\"></td>\n        <td id=\"LC356\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L357\" class=\"blob-num js-line-number\" data-line-number=\"357\"></td>\n        <td id=\"LC357\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expired</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L358\" class=\"blob-num js-line-number\" data-line-number=\"358\"></td>\n        <td id=\"LC358\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span> <span class=\"pl-k\">=</span> params;</td>\n      </tr>\n      <tr>\n        <td id=\"L359\" class=\"blob-num js-line-number\" data-line-number=\"359\"></td>\n        <td id=\"LC359\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L360\" class=\"blob-num js-line-number\" data-line-number=\"360\"></td>\n        <td id=\"LC360\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">identityId</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L361\" class=\"blob-num js-line-number\" data-line-number=\"361\"></td>\n        <td id=\"LC361\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">loadCachedId</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L362\" class=\"blob-num js-line-number\" data-line-number=\"362\"></td>\n        <td id=\"LC362\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L363\" class=\"blob-num js-line-number\" data-line-number=\"363\"></td>\n        <td id=\"LC363\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L364\" class=\"blob-num js-line-number\" data-line-number=\"364\"></td>\n        <td id=\"LC364\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L365\" class=\"blob-num js-line-number\" data-line-number=\"365\"></td>\n        <td id=\"LC365\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">refresh</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">refresh</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L366\" class=\"blob-num js-line-number\" data-line-number=\"366\"></td>\n        <td id=\"LC366\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L367\" class=\"blob-num js-line-number\" data-line-number=\"367\"></td>\n        <td id=\"LC367\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">createClients</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L368\" class=\"blob-num js-line-number\" data-line-number=\"368\"></td>\n        <td id=\"LC368\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L369\" class=\"blob-num js-line-number\" data-line-number=\"369\"></td>\n        <td id=\"LC369\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">identityId</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L370\" class=\"blob-num js-line-number\" data-line-number=\"370\"></td>\n        <td id=\"LC370\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">getId</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L371\" class=\"blob-num js-line-number\" data-line-number=\"371\"></td>\n        <td id=\"LC371\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L372\" class=\"blob-num js-line-number\" data-line-number=\"372\"></td>\n        <td id=\"LC372\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">RoleArn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L373\" class=\"blob-num js-line-number\" data-line-number=\"373\"></td>\n        <td id=\"LC373\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">getCredentialsForIdentity</span>(callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L374\" class=\"blob-num js-line-number\" data-line-number=\"374\"></td>\n        <td id=\"LC374\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L375\" class=\"blob-num js-line-number\" data-line-number=\"375\"></td>\n        <td id=\"LC375\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">getCredentialsFromSTS</span>(callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L376\" class=\"blob-num js-line-number\" data-line-number=\"376\"></td>\n        <td id=\"LC376\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L377\" class=\"blob-num js-line-number\" data-line-number=\"377\"></td>\n        <td id=\"LC377\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L378\" class=\"blob-num js-line-number\" data-line-number=\"378\"></td>\n        <td id=\"LC378\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">clearCachedId</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L379\" class=\"blob-num js-line-number\" data-line-number=\"379\"></td>\n        <td id=\"LC379\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">callback</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L380\" class=\"blob-num js-line-number\" data-line-number=\"380\"></td>\n        <td id=\"LC380\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L381\" class=\"blob-num js-line-number\" data-line-number=\"381\"></td>\n        <td id=\"LC381\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L382\" class=\"blob-num js-line-number\" data-line-number=\"382\"></td>\n        <td id=\"LC382\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L383\" class=\"blob-num js-line-number\" data-line-number=\"383\"></td>\n        <td id=\"LC383\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L384\" class=\"blob-num js-line-number\" data-line-number=\"384\"></td>\n        <td id=\"LC384\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L385\" class=\"blob-num js-line-number\" data-line-number=\"385\"></td>\n        <td id=\"LC385\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">clearCachedId</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">clearCache</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L386\" class=\"blob-num js-line-number\" data-line-number=\"386\"></td>\n        <td id=\"LC386\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">identityId</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L387\" class=\"blob-num js-line-number\" data-line-number=\"387\"></td>\n        <td id=\"LC387\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">delete</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">IdentityId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L388\" class=\"blob-num js-line-number\" data-line-number=\"388\"></td>\n        <td id=\"LC388\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L389\" class=\"blob-num js-line-number\" data-line-number=\"389\"></td>\n        <td id=\"LC389\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> poolId <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">IdentityPoolId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L390\" class=\"blob-num js-line-number\" data-line-number=\"390\"></td>\n        <td id=\"LC390\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> loginId <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">LoginId</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L391\" class=\"blob-num js-line-number\" data-line-number=\"391\"></td>\n        <td id=\"LC391\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">delete</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">storage</span>[<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">localStorageKey</span>.<span class=\"pl-c1\">id</span> <span class=\"pl-k\">+</span> poolId <span class=\"pl-k\">+</span> loginId];</td>\n      </tr>\n      <tr>\n        <td id=\"L392\" class=\"blob-num js-line-number\" data-line-number=\"392\"></td>\n        <td id=\"LC392\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">delete</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">storage</span>[<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">localStorageKey</span>.<span class=\"pl-smi\">providers</span> <span class=\"pl-k\">+</span> poolId <span class=\"pl-k\">+</span> loginId];</td>\n      </tr>\n      <tr>\n        <td id=\"L393\" class=\"blob-num js-line-number\" data-line-number=\"393\"></td>\n        <td id=\"LC393\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L394\" class=\"blob-num js-line-number\" data-line-number=\"394\"></td>\n        <td id=\"LC394\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L395\" class=\"blob-num js-line-number\" data-line-number=\"395\"></td>\n        <td id=\"LC395\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L396\" class=\"blob-num js-line-number\" data-line-number=\"396\"></td>\n        <td id=\"LC396\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">getId</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">getId</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L397\" class=\"blob-num js-line-number\" data-line-number=\"397\"></td>\n        <td id=\"LC397\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L398\" class=\"blob-num js-line-number\" data-line-number=\"398\"></td>\n        <td id=\"LC398\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">IdentityId</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L399\" class=\"blob-num js-line-number\" data-line-number=\"399\"></td>\n        <td id=\"LC399\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">callback</span>(<span class=\"pl-c1\">null</span>, <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">IdentityId</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L400\" class=\"blob-num js-line-number\" data-line-number=\"400\"></td>\n        <td id=\"LC400\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L401\" class=\"blob-num js-line-number\" data-line-number=\"401\"></td>\n        <td id=\"LC401\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L402\" class=\"blob-num js-line-number\" data-line-number=\"402\"></td>\n        <td id=\"LC402\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">cognito</span>.<span class=\"pl-en\">getId</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L403\" class=\"blob-num js-line-number\" data-line-number=\"403\"></td>\n        <td id=\"LC403\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>err <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">IdentityId</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L404\" class=\"blob-num js-line-number\" data-line-number=\"404\"></td>\n        <td id=\"LC404\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">IdentityId</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">IdentityId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L405\" class=\"blob-num js-line-number\" data-line-number=\"405\"></td>\n        <td id=\"LC405\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">callback</span>(<span class=\"pl-c1\">null</span>, <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">IdentityId</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L406\" class=\"blob-num js-line-number\" data-line-number=\"406\"></td>\n        <td id=\"LC406\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L407\" class=\"blob-num js-line-number\" data-line-number=\"407\"></td>\n        <td id=\"LC407\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">callback</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L408\" class=\"blob-num js-line-number\" data-line-number=\"408\"></td>\n        <td id=\"LC408\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L409\" class=\"blob-num js-line-number\" data-line-number=\"409\"></td>\n        <td id=\"LC409\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L410\" class=\"blob-num js-line-number\" data-line-number=\"410\"></td>\n        <td id=\"LC410\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L411\" class=\"blob-num js-line-number\" data-line-number=\"411\"></td>\n        <td id=\"LC411\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L412\" class=\"blob-num js-line-number\" data-line-number=\"412\"></td>\n        <td id=\"LC412\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L413\" class=\"blob-num js-line-number\" data-line-number=\"413\"></td>\n        <td id=\"LC413\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L414\" class=\"blob-num js-line-number\" data-line-number=\"414\"></td>\n        <td id=\"LC414\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">loadCredentials</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">loadCredentials</span>(<span class=\"pl-smi\">data</span>, <span class=\"pl-smi\">credentials</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L415\" class=\"blob-num js-line-number\" data-line-number=\"415\"></td>\n        <td id=\"LC415\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>data <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span>credentials) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L416\" class=\"blob-num js-line-number\" data-line-number=\"416\"></td>\n        <td id=\"LC416\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">expired</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L417\" class=\"blob-num js-line-number\" data-line-number=\"417\"></td>\n        <td id=\"LC417\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-smi\">AccessKeyId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L418\" class=\"blob-num js-line-number\" data-line-number=\"418\"></td>\n        <td id=\"LC418\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">secretAccessKey</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-smi\">SecretKey</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L419\" class=\"blob-num js-line-number\" data-line-number=\"419\"></td>\n        <td id=\"LC419\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-smi\">SessionToken</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L420\" class=\"blob-num js-line-number\" data-line-number=\"420\"></td>\n        <td id=\"LC420\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">expireTime</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-smi\">Expiration</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L421\" class=\"blob-num js-line-number\" data-line-number=\"421\"></td>\n        <td id=\"LC421\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L422\" class=\"blob-num js-line-number\" data-line-number=\"422\"></td>\n        <td id=\"LC422\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L423\" class=\"blob-num js-line-number\" data-line-number=\"423\"></td>\n        <td id=\"LC423\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L424\" class=\"blob-num js-line-number\" data-line-number=\"424\"></td>\n        <td id=\"LC424\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">getCredentialsForIdentity</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">getCredentialsForIdentity</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L425\" class=\"blob-num js-line-number\" data-line-number=\"425\"></td>\n        <td id=\"LC425\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L426\" class=\"blob-num js-line-number\" data-line-number=\"426\"></td>\n        <td id=\"LC426\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">cognito</span>.<span class=\"pl-en\">getCredentialsForIdentity</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L427\" class=\"blob-num js-line-number\" data-line-number=\"427\"></td>\n        <td id=\"LC427\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L428\" class=\"blob-num js-line-number\" data-line-number=\"428\"></td>\n        <td id=\"LC428\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">cacheId</span>(data);</td>\n      </tr>\n      <tr>\n        <td id=\"L429\" class=\"blob-num js-line-number\" data-line-number=\"429\"></td>\n        <td id=\"LC429\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> data;</td>\n      </tr>\n      <tr>\n        <td id=\"L430\" class=\"blob-num js-line-number\" data-line-number=\"430\"></td>\n        <td id=\"LC430\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">loadCredentials</span>(<span class=\"pl-smi\">self</span>.<span class=\"pl-c1\">data</span>, self);</td>\n      </tr>\n      <tr>\n        <td id=\"L431\" class=\"blob-num js-line-number\" data-line-number=\"431\"></td>\n        <td id=\"LC431\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L432\" class=\"blob-num js-line-number\" data-line-number=\"432\"></td>\n        <td id=\"LC432\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">clearCachedId</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L433\" class=\"blob-num js-line-number\" data-line-number=\"433\"></td>\n        <td id=\"LC433\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L434\" class=\"blob-num js-line-number\" data-line-number=\"434\"></td>\n        <td id=\"LC434\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">callback</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L435\" class=\"blob-num js-line-number\" data-line-number=\"435\"></td>\n        <td id=\"LC435\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L436\" class=\"blob-num js-line-number\" data-line-number=\"436\"></td>\n        <td id=\"LC436\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L437\" class=\"blob-num js-line-number\" data-line-number=\"437\"></td>\n        <td id=\"LC437\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L438\" class=\"blob-num js-line-number\" data-line-number=\"438\"></td>\n        <td id=\"LC438\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L439\" class=\"blob-num js-line-number\" data-line-number=\"439\"></td>\n        <td id=\"LC439\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">getCredentialsFromSTS</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">getCredentialsFromSTS</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L440\" class=\"blob-num js-line-number\" data-line-number=\"440\"></td>\n        <td id=\"LC440\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L441\" class=\"blob-num js-line-number\" data-line-number=\"441\"></td>\n        <td id=\"LC441\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">cognito</span>.<span class=\"pl-en\">getOpenIdToken</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L442\" class=\"blob-num js-line-number\" data-line-number=\"442\"></td>\n        <td id=\"LC442\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L443\" class=\"blob-num js-line-number\" data-line-number=\"443\"></td>\n        <td id=\"LC443\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">cacheId</span>(data);</td>\n      </tr>\n      <tr>\n        <td id=\"L444\" class=\"blob-num js-line-number\" data-line-number=\"444\"></td>\n        <td id=\"LC444\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">WebIdentityToken</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Token</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L445\" class=\"blob-num js-line-number\" data-line-number=\"445\"></td>\n        <td id=\"LC445\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">webIdentityCredentials</span>.<span class=\"pl-en\">refresh</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">webErr</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L446\" class=\"blob-num js-line-number\" data-line-number=\"446\"></td>\n        <td id=\"LC446\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>webErr) {</td>\n      </tr>\n      <tr>\n        <td id=\"L447\" class=\"blob-num js-line-number\" data-line-number=\"447\"></td>\n        <td id=\"LC447\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">self</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">webIdentityCredentials</span>.<span class=\"pl-c1\">data</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L448\" class=\"blob-num js-line-number\" data-line-number=\"448\"></td>\n        <td id=\"LC448\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">sts</span>.<span class=\"pl-en\">credentialsFrom</span>(<span class=\"pl-smi\">self</span>.<span class=\"pl-c1\">data</span>, self);</td>\n      </tr>\n      <tr>\n        <td id=\"L449\" class=\"blob-num js-line-number\" data-line-number=\"449\"></td>\n        <td id=\"LC449\" class=\"blob-code blob-code-inner js-file-line\">          } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L450\" class=\"blob-num js-line-number\" data-line-number=\"450\"></td>\n        <td id=\"LC450\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">clearCachedId</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L451\" class=\"blob-num js-line-number\" data-line-number=\"451\"></td>\n        <td id=\"LC451\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L452\" class=\"blob-num js-line-number\" data-line-number=\"452\"></td>\n        <td id=\"LC452\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">callback</span>(webErr);</td>\n      </tr>\n      <tr>\n        <td id=\"L453\" class=\"blob-num js-line-number\" data-line-number=\"453\"></td>\n        <td id=\"LC453\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L454\" class=\"blob-num js-line-number\" data-line-number=\"454\"></td>\n        <td id=\"LC454\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L455\" class=\"blob-num js-line-number\" data-line-number=\"455\"></td>\n        <td id=\"LC455\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">clearCachedId</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L456\" class=\"blob-num js-line-number\" data-line-number=\"456\"></td>\n        <td id=\"LC456\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">callback</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L457\" class=\"blob-num js-line-number\" data-line-number=\"457\"></td>\n        <td id=\"LC457\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L458\" class=\"blob-num js-line-number\" data-line-number=\"458\"></td>\n        <td id=\"LC458\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L459\" class=\"blob-num js-line-number\" data-line-number=\"459\"></td>\n        <td id=\"LC459\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L460\" class=\"blob-num js-line-number\" data-line-number=\"460\"></td>\n        <td id=\"LC460\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L461\" class=\"blob-num js-line-number\" data-line-number=\"461\"></td>\n        <td id=\"LC461\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L462\" class=\"blob-num js-line-number\" data-line-number=\"462\"></td>\n        <td id=\"LC462\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">loadCachedId</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">loadCachedId</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L463\" class=\"blob-num js-line-number\" data-line-number=\"463\"></td>\n        <td id=\"LC463\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L464\" class=\"blob-num js-line-number\" data-line-number=\"464\"></td>\n        <td id=\"LC464\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L465\" class=\"blob-num js-line-number\" data-line-number=\"465\"></td>\n        <td id=\"LC465\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isBrowser</span>() <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">IdentityId</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L466\" class=\"blob-num js-line-number\" data-line-number=\"466\"></td>\n        <td id=\"LC466\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> id <span class=\"pl-k\">=</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">getStorage</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>id<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L467\" class=\"blob-num js-line-number\" data-line-number=\"467\"></td>\n        <td id=\"LC467\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (id <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">Logins</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L468\" class=\"blob-num js-line-number\" data-line-number=\"468\"></td>\n        <td id=\"LC468\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> actualProviders <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(<span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">Logins</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L469\" class=\"blob-num js-line-number\" data-line-number=\"469\"></td>\n        <td id=\"LC469\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> cachedProviders <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L470\" class=\"blob-num js-line-number\" data-line-number=\"470\"></td>\n        <td id=\"LC470\" class=\"blob-code blob-code-inner js-file-line\">          (<span class=\"pl-smi\">self</span>.<span class=\"pl-en\">getStorage</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>providers<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>,<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L471\" class=\"blob-num js-line-number\" data-line-number=\"471\"></td>\n        <td id=\"LC471\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L472\" class=\"blob-num js-line-number\" data-line-number=\"472\"></td>\n        <td id=\"LC472\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> intersect <span class=\"pl-k\">=</span> <span class=\"pl-smi\">cachedProviders</span>.<span class=\"pl-en\">filter</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">n</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L473\" class=\"blob-num js-line-number\" data-line-number=\"473\"></td>\n        <td id=\"LC473\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">return</span> <span class=\"pl-smi\">actualProviders</span>.<span class=\"pl-c1\">indexOf</span>(n) <span class=\"pl-k\">!==</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L474\" class=\"blob-num js-line-number\" data-line-number=\"474\"></td>\n        <td id=\"LC474\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L475\" class=\"blob-num js-line-number\" data-line-number=\"475\"></td>\n        <td id=\"LC475\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">intersect</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L476\" class=\"blob-num js-line-number\" data-line-number=\"476\"></td>\n        <td id=\"LC476\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">IdentityId</span> <span class=\"pl-k\">=</span> id;</td>\n      </tr>\n      <tr>\n        <td id=\"L477\" class=\"blob-num js-line-number\" data-line-number=\"477\"></td>\n        <td id=\"LC477\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L478\" class=\"blob-num js-line-number\" data-line-number=\"478\"></td>\n        <td id=\"LC478\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (id) {</td>\n      </tr>\n      <tr>\n        <td id=\"L479\" class=\"blob-num js-line-number\" data-line-number=\"479\"></td>\n        <td id=\"LC479\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">IdentityId</span> <span class=\"pl-k\">=</span> id;</td>\n      </tr>\n      <tr>\n        <td id=\"L480\" class=\"blob-num js-line-number\" data-line-number=\"480\"></td>\n        <td id=\"LC480\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L481\" class=\"blob-num js-line-number\" data-line-number=\"481\"></td>\n        <td id=\"LC481\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L482\" class=\"blob-num js-line-number\" data-line-number=\"482\"></td>\n        <td id=\"LC482\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L483\" class=\"blob-num js-line-number\" data-line-number=\"483\"></td>\n        <td id=\"LC483\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L484\" class=\"blob-num js-line-number\" data-line-number=\"484\"></td>\n        <td id=\"LC484\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L485\" class=\"blob-num js-line-number\" data-line-number=\"485\"></td>\n        <td id=\"LC485\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">createClients</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L486\" class=\"blob-num js-line-number\" data-line-number=\"486\"></td>\n        <td id=\"LC486\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">webIdentityCredentials</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">webIdentityCredentials</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L487\" class=\"blob-num js-line-number\" data-line-number=\"487\"></td>\n        <td id=\"LC487\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.WebIdentityCredentials</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L488\" class=\"blob-num js-line-number\" data-line-number=\"488\"></td>\n        <td id=\"LC488\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">cognito</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">cognito</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L489\" class=\"blob-num js-line-number\" data-line-number=\"489\"></td>\n        <td id=\"LC489\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.CognitoIdentity</span>({params<span class=\"pl-k\">:</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L490\" class=\"blob-num js-line-number\" data-line-number=\"490\"></td>\n        <td id=\"LC490\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sts</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sts</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.STS</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L491\" class=\"blob-num js-line-number\" data-line-number=\"491\"></td>\n        <td id=\"LC491\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L492\" class=\"blob-num js-line-number\" data-line-number=\"492\"></td>\n        <td id=\"LC492\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L493\" class=\"blob-num js-line-number\" data-line-number=\"493\"></td>\n        <td id=\"LC493\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L494\" class=\"blob-num js-line-number\" data-line-number=\"494\"></td>\n        <td id=\"LC494\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">cacheId</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">cacheId</span>(<span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L495\" class=\"blob-num js-line-number\" data-line-number=\"495\"></td>\n        <td id=\"LC495\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">identityId</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">IdentityId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L496\" class=\"blob-num js-line-number\" data-line-number=\"496\"></td>\n        <td id=\"LC496\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">IdentityId</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">identityId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L497\" class=\"blob-num js-line-number\" data-line-number=\"497\"></td>\n        <td id=\"LC497\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L498\" class=\"blob-num js-line-number\" data-line-number=\"498\"></td>\n        <td id=\"LC498\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isBrowser</span>()) {</td>\n      </tr>\n      <tr>\n        <td id=\"L499\" class=\"blob-num js-line-number\" data-line-number=\"499\"></td>\n        <td id=\"LC499\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">setStorage</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>id<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">IdentityId</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L500\" class=\"blob-num js-line-number\" data-line-number=\"500\"></td>\n        <td id=\"LC500\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L501\" class=\"blob-num js-line-number\" data-line-number=\"501\"></td>\n        <td id=\"LC501\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">Logins</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L502\" class=\"blob-num js-line-number\" data-line-number=\"502\"></td>\n        <td id=\"LC502\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">setStorage</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>providers<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">Logins</span>).<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>,<span class=\"pl-pds\">&#39;</span></span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L503\" class=\"blob-num js-line-number\" data-line-number=\"503\"></td>\n        <td id=\"LC503\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L504\" class=\"blob-num js-line-number\" data-line-number=\"504\"></td>\n        <td id=\"LC504\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L505\" class=\"blob-num js-line-number\" data-line-number=\"505\"></td>\n        <td id=\"LC505\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L506\" class=\"blob-num js-line-number\" data-line-number=\"506\"></td>\n        <td id=\"LC506\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L507\" class=\"blob-num js-line-number\" data-line-number=\"507\"></td>\n        <td id=\"LC507\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L508\" class=\"blob-num js-line-number\" data-line-number=\"508\"></td>\n        <td id=\"LC508\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">getStorage</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">getStorage</span>(<span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L509\" class=\"blob-num js-line-number\" data-line-number=\"509\"></td>\n        <td id=\"LC509\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">storage</span>[<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">localStorageKey</span>[key] <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">IdentityPoolId</span> <span class=\"pl-k\">+</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">LoginId</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>)];</td>\n      </tr>\n      <tr>\n        <td id=\"L510\" class=\"blob-num js-line-number\" data-line-number=\"510\"></td>\n        <td id=\"LC510\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L511\" class=\"blob-num js-line-number\" data-line-number=\"511\"></td>\n        <td id=\"LC511\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L512\" class=\"blob-num js-line-number\" data-line-number=\"512\"></td>\n        <td id=\"LC512\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L513\" class=\"blob-num js-line-number\" data-line-number=\"513\"></td>\n        <td id=\"LC513\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">setStorage</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">setStorage</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L514\" class=\"blob-num js-line-number\" data-line-number=\"514\"></td>\n        <td id=\"LC514\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L515\" class=\"blob-num js-line-number\" data-line-number=\"515\"></td>\n        <td id=\"LC515\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">storage</span>[<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">localStorageKey</span>[key] <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">IdentityPoolId</span> <span class=\"pl-k\">+</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">LoginId</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>)] <span class=\"pl-k\">=</span> val;</td>\n      </tr>\n      <tr>\n        <td id=\"L516\" class=\"blob-num js-line-number\" data-line-number=\"516\"></td>\n        <td id=\"LC516\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">catch</span> (_) {}</td>\n      </tr>\n      <tr>\n        <td id=\"L517\" class=\"blob-num js-line-number\" data-line-number=\"517\"></td>\n        <td id=\"LC517\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L518\" class=\"blob-num js-line-number\" data-line-number=\"518\"></td>\n        <td id=\"LC518\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L519\" class=\"blob-num js-line-number\" data-line-number=\"519\"></td>\n        <td id=\"LC519\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L520\" class=\"blob-num js-line-number\" data-line-number=\"520\"></td>\n        <td id=\"LC520\" class=\"blob-code blob-code-inner js-file-line\">  storage<span class=\"pl-k\">:</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L521\" class=\"blob-num js-line-number\" data-line-number=\"521\"></td>\n        <td id=\"LC521\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L522\" class=\"blob-num js-line-number\" data-line-number=\"522\"></td>\n        <td id=\"LC522\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isBrowser</span>() <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">window</span>.<span class=\"pl-smi\">localStorage</span> <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">window</span>.<span class=\"pl-smi\">localStorage</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">?</span></td>\n      </tr>\n      <tr>\n        <td id=\"L523\" class=\"blob-num js-line-number\" data-line-number=\"523\"></td>\n        <td id=\"LC523\" class=\"blob-code blob-code-inner js-file-line\">             <span class=\"pl-c1\">window</span>.<span class=\"pl-smi\">localStorage</span> <span class=\"pl-k\">:</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L524\" class=\"blob-num js-line-number\" data-line-number=\"524\"></td>\n        <td id=\"LC524\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">catch</span> (_) {</td>\n      </tr>\n      <tr>\n        <td id=\"L525\" class=\"blob-num js-line-number\" data-line-number=\"525\"></td>\n        <td id=\"LC525\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L526\" class=\"blob-num js-line-number\" data-line-number=\"526\"></td>\n        <td id=\"LC526\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L527\" class=\"blob-num js-line-number\" data-line-number=\"527\"></td>\n        <td id=\"LC527\" class=\"blob-code blob-code-inner js-file-line\">  })()</td>\n      </tr>\n      <tr>\n        <td id=\"L528\" class=\"blob-num js-line-number\" data-line-number=\"528\"></td>\n        <td id=\"LC528\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L529\" class=\"blob-num js-line-number\" data-line-number=\"529\"></td>\n        <td id=\"LC529\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L530\" class=\"blob-num js-line-number\" data-line-number=\"530\"></td>\n        <td id=\"LC530\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">6</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L531\" class=\"blob-num js-line-number\" data-line-number=\"531\"></td>\n        <td id=\"LC531\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L532\" class=\"blob-num js-line-number\" data-line-number=\"532\"></td>\n        <td id=\"LC532\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L533\" class=\"blob-num js-line-number\" data-line-number=\"533\"></td>\n        <td id=\"LC533\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L534\" class=\"blob-num js-line-number\" data-line-number=\"534\"></td>\n        <td id=\"LC534\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">CredentialProviderChain</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">inherit</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Credentials</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L535\" class=\"blob-num js-line-number\" data-line-number=\"535\"></td>\n        <td id=\"LC535\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L536\" class=\"blob-num js-line-number\" data-line-number=\"536\"></td>\n        <td id=\"LC536\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L537\" class=\"blob-num js-line-number\" data-line-number=\"537\"></td>\n        <td id=\"LC537\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">CredentialProviderChain</span>(<span class=\"pl-smi\">providers</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L538\" class=\"blob-num js-line-number\" data-line-number=\"538\"></td>\n        <td id=\"LC538\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (providers) {</td>\n      </tr>\n      <tr>\n        <td id=\"L539\" class=\"blob-num js-line-number\" data-line-number=\"539\"></td>\n        <td id=\"LC539\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">providers</span> <span class=\"pl-k\">=</span> providers;</td>\n      </tr>\n      <tr>\n        <td id=\"L540\" class=\"blob-num js-line-number\" data-line-number=\"540\"></td>\n        <td id=\"LC540\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L541\" class=\"blob-num js-line-number\" data-line-number=\"541\"></td>\n        <td id=\"LC541\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">providers</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">CredentialProviderChain</span>.<span class=\"pl-smi\">defaultProviders</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L542\" class=\"blob-num js-line-number\" data-line-number=\"542\"></td>\n        <td id=\"LC542\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L543\" class=\"blob-num js-line-number\" data-line-number=\"543\"></td>\n        <td id=\"LC543\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L544\" class=\"blob-num js-line-number\" data-line-number=\"544\"></td>\n        <td id=\"LC544\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L545\" class=\"blob-num js-line-number\" data-line-number=\"545\"></td>\n        <td id=\"LC545\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L546\" class=\"blob-num js-line-number\" data-line-number=\"546\"></td>\n        <td id=\"LC546\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">resolve</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">resolve</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L547\" class=\"blob-num js-line-number\" data-line-number=\"547\"></td>\n        <td id=\"LC547\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">providers</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L548\" class=\"blob-num js-line-number\" data-line-number=\"548\"></td>\n        <td id=\"LC548\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">callback</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>No providers<span class=\"pl-pds\">&#39;</span></span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L549\" class=\"blob-num js-line-number\" data-line-number=\"549\"></td>\n        <td id=\"LC549\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L550\" class=\"blob-num js-line-number\" data-line-number=\"550\"></td>\n        <td id=\"LC550\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L551\" class=\"blob-num js-line-number\" data-line-number=\"551\"></td>\n        <td id=\"LC551\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L552\" class=\"blob-num js-line-number\" data-line-number=\"552\"></td>\n        <td id=\"LC552\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> index <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L553\" class=\"blob-num js-line-number\" data-line-number=\"553\"></td>\n        <td id=\"LC553\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> providers <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">providers</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L554\" class=\"blob-num js-line-number\" data-line-number=\"554\"></td>\n        <td id=\"LC554\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L555\" class=\"blob-num js-line-number\" data-line-number=\"555\"></td>\n        <td id=\"LC555\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">resolveNext</span>(<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">creds</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L556\" class=\"blob-num js-line-number\" data-line-number=\"556\"></td>\n        <td id=\"LC556\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> ((<span class=\"pl-k\">!</span>err <span class=\"pl-k\">&amp;&amp;</span> creds) <span class=\"pl-k\">||</span> index <span class=\"pl-k\">===</span> <span class=\"pl-smi\">providers</span>.<span class=\"pl-c1\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L557\" class=\"blob-num js-line-number\" data-line-number=\"557\"></td>\n        <td id=\"LC557\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">callback</span>(err, creds);</td>\n      </tr>\n      <tr>\n        <td id=\"L558\" class=\"blob-num js-line-number\" data-line-number=\"558\"></td>\n        <td id=\"LC558\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L559\" class=\"blob-num js-line-number\" data-line-number=\"559\"></td>\n        <td id=\"LC559\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L560\" class=\"blob-num js-line-number\" data-line-number=\"560\"></td>\n        <td id=\"LC560\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L561\" class=\"blob-num js-line-number\" data-line-number=\"561\"></td>\n        <td id=\"LC561\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> provider <span class=\"pl-k\">=</span> providers[index<span class=\"pl-k\">++</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L562\" class=\"blob-num js-line-number\" data-line-number=\"562\"></td>\n        <td id=\"LC562\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> provider <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L563\" class=\"blob-num js-line-number\" data-line-number=\"563\"></td>\n        <td id=\"LC563\" class=\"blob-code blob-code-inner js-file-line\">        creds <span class=\"pl-k\">=</span> <span class=\"pl-smi\">provider</span>.<span class=\"pl-c1\">call</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L564\" class=\"blob-num js-line-number\" data-line-number=\"564\"></td>\n        <td id=\"LC564\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L565\" class=\"blob-num js-line-number\" data-line-number=\"565\"></td>\n        <td id=\"LC565\" class=\"blob-code blob-code-inner js-file-line\">        creds <span class=\"pl-k\">=</span> provider;</td>\n      </tr>\n      <tr>\n        <td id=\"L566\" class=\"blob-num js-line-number\" data-line-number=\"566\"></td>\n        <td id=\"LC566\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L567\" class=\"blob-num js-line-number\" data-line-number=\"567\"></td>\n        <td id=\"LC567\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L568\" class=\"blob-num js-line-number\" data-line-number=\"568\"></td>\n        <td id=\"LC568\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">creds</span>.<span class=\"pl-smi\">get</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L569\" class=\"blob-num js-line-number\" data-line-number=\"569\"></td>\n        <td id=\"LC569\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">creds</span>.<span class=\"pl-en\">get</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">getErr</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L570\" class=\"blob-num js-line-number\" data-line-number=\"570\"></td>\n        <td id=\"LC570\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">resolveNext</span>(getErr, getErr <span class=\"pl-k\">?</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">:</span> creds);</td>\n      </tr>\n      <tr>\n        <td id=\"L571\" class=\"blob-num js-line-number\" data-line-number=\"571\"></td>\n        <td id=\"LC571\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L572\" class=\"blob-num js-line-number\" data-line-number=\"572\"></td>\n        <td id=\"LC572\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L573\" class=\"blob-num js-line-number\" data-line-number=\"573\"></td>\n        <td id=\"LC573\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">resolveNext</span>(<span class=\"pl-c1\">null</span>, creds);</td>\n      </tr>\n      <tr>\n        <td id=\"L574\" class=\"blob-num js-line-number\" data-line-number=\"574\"></td>\n        <td id=\"LC574\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L575\" class=\"blob-num js-line-number\" data-line-number=\"575\"></td>\n        <td id=\"LC575\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L576\" class=\"blob-num js-line-number\" data-line-number=\"576\"></td>\n        <td id=\"LC576\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L577\" class=\"blob-num js-line-number\" data-line-number=\"577\"></td>\n        <td id=\"LC577\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">resolveNext</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L578\" class=\"blob-num js-line-number\" data-line-number=\"578\"></td>\n        <td id=\"LC578\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L579\" class=\"blob-num js-line-number\" data-line-number=\"579\"></td>\n        <td id=\"LC579\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L580\" class=\"blob-num js-line-number\" data-line-number=\"580\"></td>\n        <td id=\"LC580\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L581\" class=\"blob-num js-line-number\" data-line-number=\"581\"></td>\n        <td id=\"LC581\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L582\" class=\"blob-num js-line-number\" data-line-number=\"582\"></td>\n        <td id=\"LC582\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L583\" class=\"blob-num js-line-number\" data-line-number=\"583\"></td>\n        <td id=\"LC583\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L584\" class=\"blob-num js-line-number\" data-line-number=\"584\"></td>\n        <td id=\"LC584\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">CredentialProviderChain</span>.<span class=\"pl-smi\">defaultProviders</span> <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L585\" class=\"blob-num js-line-number\" data-line-number=\"585\"></td>\n        <td id=\"LC585\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L586\" class=\"blob-num js-line-number\" data-line-number=\"586\"></td>\n        <td id=\"LC586\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">7</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L587\" class=\"blob-num js-line-number\" data-line-number=\"587\"></td>\n        <td id=\"LC587\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L588\" class=\"blob-num js-line-number\" data-line-number=\"588\"></td>\n        <td id=\"LC588\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L589\" class=\"blob-num js-line-number\" data-line-number=\"589\"></td>\n        <td id=\"LC589\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L590\" class=\"blob-num js-line-number\" data-line-number=\"590\"></td>\n        <td id=\"LC590\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">SAMLCredentials</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">inherit</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Credentials</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L591\" class=\"blob-num js-line-number\" data-line-number=\"591\"></td>\n        <td id=\"LC591\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L592\" class=\"blob-num js-line-number\" data-line-number=\"592\"></td>\n        <td id=\"LC592\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">SAMLCredentials</span>(<span class=\"pl-smi\">params</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L593\" class=\"blob-num js-line-number\" data-line-number=\"593\"></td>\n        <td id=\"LC593\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L594\" class=\"blob-num js-line-number\" data-line-number=\"594\"></td>\n        <td id=\"LC594\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expired</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L595\" class=\"blob-num js-line-number\" data-line-number=\"595\"></td>\n        <td id=\"LC595\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span> <span class=\"pl-k\">=</span> params;</td>\n      </tr>\n      <tr>\n        <td id=\"L596\" class=\"blob-num js-line-number\" data-line-number=\"596\"></td>\n        <td id=\"LC596\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L597\" class=\"blob-num js-line-number\" data-line-number=\"597\"></td>\n        <td id=\"LC597\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L598\" class=\"blob-num js-line-number\" data-line-number=\"598\"></td>\n        <td id=\"LC598\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L599\" class=\"blob-num js-line-number\" data-line-number=\"599\"></td>\n        <td id=\"LC599\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">refresh</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">refresh</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L600\" class=\"blob-num js-line-number\" data-line-number=\"600\"></td>\n        <td id=\"LC600\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L601\" class=\"blob-num js-line-number\" data-line-number=\"601\"></td>\n        <td id=\"LC601\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">createClients</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L602\" class=\"blob-num js-line-number\" data-line-number=\"602\"></td>\n        <td id=\"LC602\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>callback) <span class=\"pl-en\">callback</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) { <span class=\"pl-k\">if</span> (err) <span class=\"pl-k\">throw</span> err; };</td>\n      </tr>\n      <tr>\n        <td id=\"L603\" class=\"blob-num js-line-number\" data-line-number=\"603\"></td>\n        <td id=\"LC603\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L604\" class=\"blob-num js-line-number\" data-line-number=\"604\"></td>\n        <td id=\"LC604\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">assumeRoleWithSAML</span>(<span class=\"pl-k\">function</span> (<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L605\" class=\"blob-num js-line-number\" data-line-number=\"605\"></td>\n        <td id=\"LC605\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L606\" class=\"blob-num js-line-number\" data-line-number=\"606\"></td>\n        <td id=\"LC606\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">credentialsFrom</span>(data, self);</td>\n      </tr>\n      <tr>\n        <td id=\"L607\" class=\"blob-num js-line-number\" data-line-number=\"607\"></td>\n        <td id=\"LC607\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L608\" class=\"blob-num js-line-number\" data-line-number=\"608\"></td>\n        <td id=\"LC608\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">callback</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L609\" class=\"blob-num js-line-number\" data-line-number=\"609\"></td>\n        <td id=\"LC609\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L610\" class=\"blob-num js-line-number\" data-line-number=\"610\"></td>\n        <td id=\"LC610\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L611\" class=\"blob-num js-line-number\" data-line-number=\"611\"></td>\n        <td id=\"LC611\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L612\" class=\"blob-num js-line-number\" data-line-number=\"612\"></td>\n        <td id=\"LC612\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L613\" class=\"blob-num js-line-number\" data-line-number=\"613\"></td>\n        <td id=\"LC613\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">createClients</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L614\" class=\"blob-num js-line-number\" data-line-number=\"614\"></td>\n        <td id=\"LC614\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.STS</span>({params<span class=\"pl-k\">:</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L615\" class=\"blob-num js-line-number\" data-line-number=\"615\"></td>\n        <td id=\"LC615\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L616\" class=\"blob-num js-line-number\" data-line-number=\"616\"></td>\n        <td id=\"LC616\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L617\" class=\"blob-num js-line-number\" data-line-number=\"617\"></td>\n        <td id=\"LC617\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L618\" class=\"blob-num js-line-number\" data-line-number=\"618\"></td>\n        <td id=\"LC618\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L619\" class=\"blob-num js-line-number\" data-line-number=\"619\"></td>\n        <td id=\"LC619\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">8</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L620\" class=\"blob-num js-line-number\" data-line-number=\"620\"></td>\n        <td id=\"LC620\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L621\" class=\"blob-num js-line-number\" data-line-number=\"621\"></td>\n        <td id=\"LC621\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L622\" class=\"blob-num js-line-number\" data-line-number=\"622\"></td>\n        <td id=\"LC622\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L623\" class=\"blob-num js-line-number\" data-line-number=\"623\"></td>\n        <td id=\"LC623\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">TemporaryCredentials</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">inherit</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Credentials</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L624\" class=\"blob-num js-line-number\" data-line-number=\"624\"></td>\n        <td id=\"LC624\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L625\" class=\"blob-num js-line-number\" data-line-number=\"625\"></td>\n        <td id=\"LC625\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">TemporaryCredentials</span>(<span class=\"pl-smi\">params</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L626\" class=\"blob-num js-line-number\" data-line-number=\"626\"></td>\n        <td id=\"LC626\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L627\" class=\"blob-num js-line-number\" data-line-number=\"627\"></td>\n        <td id=\"LC627\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">loadMasterCredentials</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L628\" class=\"blob-num js-line-number\" data-line-number=\"628\"></td>\n        <td id=\"LC628\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expired</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L629\" class=\"blob-num js-line-number\" data-line-number=\"629\"></td>\n        <td id=\"LC629\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L630\" class=\"blob-num js-line-number\" data-line-number=\"630\"></td>\n        <td id=\"LC630\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span> <span class=\"pl-k\">=</span> params <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L631\" class=\"blob-num js-line-number\" data-line-number=\"631\"></td>\n        <td id=\"LC631\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">RoleArn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L632\" class=\"blob-num js-line-number\" data-line-number=\"632\"></td>\n        <td id=\"LC632\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">RoleSessionName</span> <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L633\" class=\"blob-num js-line-number\" data-line-number=\"633\"></td>\n        <td id=\"LC633\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">RoleSessionName</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>temporary-credentials<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L634\" class=\"blob-num js-line-number\" data-line-number=\"634\"></td>\n        <td id=\"LC634\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L635\" class=\"blob-num js-line-number\" data-line-number=\"635\"></td>\n        <td id=\"LC635\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L636\" class=\"blob-num js-line-number\" data-line-number=\"636\"></td>\n        <td id=\"LC636\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L637\" class=\"blob-num js-line-number\" data-line-number=\"637\"></td>\n        <td id=\"LC637\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L638\" class=\"blob-num js-line-number\" data-line-number=\"638\"></td>\n        <td id=\"LC638\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">refresh</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">refresh</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L639\" class=\"blob-num js-line-number\" data-line-number=\"639\"></td>\n        <td id=\"LC639\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L640\" class=\"blob-num js-line-number\" data-line-number=\"640\"></td>\n        <td id=\"LC640\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">createClients</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L641\" class=\"blob-num js-line-number\" data-line-number=\"641\"></td>\n        <td id=\"LC641\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>callback) <span class=\"pl-en\">callback</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) { <span class=\"pl-k\">if</span> (err) <span class=\"pl-k\">throw</span> err; };</td>\n      </tr>\n      <tr>\n        <td id=\"L642\" class=\"blob-num js-line-number\" data-line-number=\"642\"></td>\n        <td id=\"LC642\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L643\" class=\"blob-num js-line-number\" data-line-number=\"643\"></td>\n        <td id=\"LC643\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">credentials</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">masterCredentials</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L644\" class=\"blob-num js-line-number\" data-line-number=\"644\"></td>\n        <td id=\"LC644\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> operation <span class=\"pl-k\">=</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">RoleArn</span> <span class=\"pl-k\">?</span></td>\n      </tr>\n      <tr>\n        <td id=\"L645\" class=\"blob-num js-line-number\" data-line-number=\"645\"></td>\n        <td id=\"LC645\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">assumeRole</span> <span class=\"pl-k\">:</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">getSessionToken</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L646\" class=\"blob-num js-line-number\" data-line-number=\"646\"></td>\n        <td id=\"LC646\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">operation</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">service</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L647\" class=\"blob-num js-line-number\" data-line-number=\"647\"></td>\n        <td id=\"LC647\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L648\" class=\"blob-num js-line-number\" data-line-number=\"648\"></td>\n        <td id=\"LC648\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">credentialsFrom</span>(data, self);</td>\n      </tr>\n      <tr>\n        <td id=\"L649\" class=\"blob-num js-line-number\" data-line-number=\"649\"></td>\n        <td id=\"LC649\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L650\" class=\"blob-num js-line-number\" data-line-number=\"650\"></td>\n        <td id=\"LC650\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">callback</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L651\" class=\"blob-num js-line-number\" data-line-number=\"651\"></td>\n        <td id=\"LC651\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L652\" class=\"blob-num js-line-number\" data-line-number=\"652\"></td>\n        <td id=\"LC652\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L653\" class=\"blob-num js-line-number\" data-line-number=\"653\"></td>\n        <td id=\"LC653\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L654\" class=\"blob-num js-line-number\" data-line-number=\"654\"></td>\n        <td id=\"LC654\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L655\" class=\"blob-num js-line-number\" data-line-number=\"655\"></td>\n        <td id=\"LC655\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">loadMasterCredentials</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">loadMasterCredentials</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L656\" class=\"blob-num js-line-number\" data-line-number=\"656\"></td>\n        <td id=\"LC656\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">masterCredentials</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">credentials</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L657\" class=\"blob-num js-line-number\" data-line-number=\"657\"></td>\n        <td id=\"LC657\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">while</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">masterCredentials</span>.<span class=\"pl-smi\">masterCredentials</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L658\" class=\"blob-num js-line-number\" data-line-number=\"658\"></td>\n        <td id=\"LC658\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">masterCredentials</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">masterCredentials</span>.<span class=\"pl-smi\">masterCredentials</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L659\" class=\"blob-num js-line-number\" data-line-number=\"659\"></td>\n        <td id=\"LC659\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L660\" class=\"blob-num js-line-number\" data-line-number=\"660\"></td>\n        <td id=\"LC660\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L661\" class=\"blob-num js-line-number\" data-line-number=\"661\"></td>\n        <td id=\"LC661\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L662\" class=\"blob-num js-line-number\" data-line-number=\"662\"></td>\n        <td id=\"LC662\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L663\" class=\"blob-num js-line-number\" data-line-number=\"663\"></td>\n        <td id=\"LC663\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">createClients</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L664\" class=\"blob-num js-line-number\" data-line-number=\"664\"></td>\n        <td id=\"LC664\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.STS</span>({params<span class=\"pl-k\">:</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L665\" class=\"blob-num js-line-number\" data-line-number=\"665\"></td>\n        <td id=\"LC665\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L666\" class=\"blob-num js-line-number\" data-line-number=\"666\"></td>\n        <td id=\"LC666\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L667\" class=\"blob-num js-line-number\" data-line-number=\"667\"></td>\n        <td id=\"LC667\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L668\" class=\"blob-num js-line-number\" data-line-number=\"668\"></td>\n        <td id=\"LC668\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L669\" class=\"blob-num js-line-number\" data-line-number=\"669\"></td>\n        <td id=\"LC669\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">9</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L670\" class=\"blob-num js-line-number\" data-line-number=\"670\"></td>\n        <td id=\"LC670\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L671\" class=\"blob-num js-line-number\" data-line-number=\"671\"></td>\n        <td id=\"LC671\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L672\" class=\"blob-num js-line-number\" data-line-number=\"672\"></td>\n        <td id=\"LC672\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L673\" class=\"blob-num js-line-number\" data-line-number=\"673\"></td>\n        <td id=\"LC673\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">WebIdentityCredentials</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">inherit</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Credentials</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L674\" class=\"blob-num js-line-number\" data-line-number=\"674\"></td>\n        <td id=\"LC674\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L675\" class=\"blob-num js-line-number\" data-line-number=\"675\"></td>\n        <td id=\"LC675\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">WebIdentityCredentials</span>(<span class=\"pl-smi\">params</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L676\" class=\"blob-num js-line-number\" data-line-number=\"676\"></td>\n        <td id=\"LC676\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L677\" class=\"blob-num js-line-number\" data-line-number=\"677\"></td>\n        <td id=\"LC677\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expired</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L678\" class=\"blob-num js-line-number\" data-line-number=\"678\"></td>\n        <td id=\"LC678\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span> <span class=\"pl-k\">=</span> params;</td>\n      </tr>\n      <tr>\n        <td id=\"L679\" class=\"blob-num js-line-number\" data-line-number=\"679\"></td>\n        <td id=\"LC679\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">RoleSessionName</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">RoleSessionName</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>web-identity<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L680\" class=\"blob-num js-line-number\" data-line-number=\"680\"></td>\n        <td id=\"LC680\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L681\" class=\"blob-num js-line-number\" data-line-number=\"681\"></td>\n        <td id=\"LC681\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L682\" class=\"blob-num js-line-number\" data-line-number=\"682\"></td>\n        <td id=\"LC682\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L683\" class=\"blob-num js-line-number\" data-line-number=\"683\"></td>\n        <td id=\"LC683\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L684\" class=\"blob-num js-line-number\" data-line-number=\"684\"></td>\n        <td id=\"LC684\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">refresh</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">refresh</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L685\" class=\"blob-num js-line-number\" data-line-number=\"685\"></td>\n        <td id=\"LC685\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L686\" class=\"blob-num js-line-number\" data-line-number=\"686\"></td>\n        <td id=\"LC686\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">createClients</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L687\" class=\"blob-num js-line-number\" data-line-number=\"687\"></td>\n        <td id=\"LC687\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>callback) <span class=\"pl-en\">callback</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) { <span class=\"pl-k\">if</span> (err) <span class=\"pl-k\">throw</span> err; };</td>\n      </tr>\n      <tr>\n        <td id=\"L688\" class=\"blob-num js-line-number\" data-line-number=\"688\"></td>\n        <td id=\"LC688\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L689\" class=\"blob-num js-line-number\" data-line-number=\"689\"></td>\n        <td id=\"LC689\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">assumeRoleWithWebIdentity</span>(<span class=\"pl-k\">function</span> (<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L690\" class=\"blob-num js-line-number\" data-line-number=\"690\"></td>\n        <td id=\"LC690\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">self</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L691\" class=\"blob-num js-line-number\" data-line-number=\"691\"></td>\n        <td id=\"LC691\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L692\" class=\"blob-num js-line-number\" data-line-number=\"692\"></td>\n        <td id=\"LC692\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> data;</td>\n      </tr>\n      <tr>\n        <td id=\"L693\" class=\"blob-num js-line-number\" data-line-number=\"693\"></td>\n        <td id=\"LC693\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">credentialsFrom</span>(data, self);</td>\n      </tr>\n      <tr>\n        <td id=\"L694\" class=\"blob-num js-line-number\" data-line-number=\"694\"></td>\n        <td id=\"LC694\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L695\" class=\"blob-num js-line-number\" data-line-number=\"695\"></td>\n        <td id=\"LC695\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">callback</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L696\" class=\"blob-num js-line-number\" data-line-number=\"696\"></td>\n        <td id=\"LC696\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L697\" class=\"blob-num js-line-number\" data-line-number=\"697\"></td>\n        <td id=\"LC697\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L698\" class=\"blob-num js-line-number\" data-line-number=\"698\"></td>\n        <td id=\"LC698\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L699\" class=\"blob-num js-line-number\" data-line-number=\"699\"></td>\n        <td id=\"LC699\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L700\" class=\"blob-num js-line-number\" data-line-number=\"700\"></td>\n        <td id=\"LC700\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">createClients</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L701\" class=\"blob-num js-line-number\" data-line-number=\"701\"></td>\n        <td id=\"LC701\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.STS</span>({params<span class=\"pl-k\">:</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L702\" class=\"blob-num js-line-number\" data-line-number=\"702\"></td>\n        <td id=\"LC702\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L703\" class=\"blob-num js-line-number\" data-line-number=\"703\"></td>\n        <td id=\"LC703\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L704\" class=\"blob-num js-line-number\" data-line-number=\"704\"></td>\n        <td id=\"LC704\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L705\" class=\"blob-num js-line-number\" data-line-number=\"705\"></td>\n        <td id=\"LC705\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L706\" class=\"blob-num js-line-number\" data-line-number=\"706\"></td>\n        <td id=\"LC706\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">10</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L707\" class=\"blob-num js-line-number\" data-line-number=\"707\"></td>\n        <td id=\"LC707\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L708\" class=\"blob-num js-line-number\" data-line-number=\"708\"></td>\n        <td id=\"LC708\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> SequentialExecutor <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./sequential_executor<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L709\" class=\"blob-num js-line-number\" data-line-number=\"709\"></td>\n        <td id=\"LC709\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L710\" class=\"blob-num js-line-number\" data-line-number=\"710\"></td>\n        <td id=\"LC710\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L711\" class=\"blob-num js-line-number\" data-line-number=\"711\"></td>\n        <td id=\"LC711\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L712\" class=\"blob-num js-line-number\" data-line-number=\"712\"></td>\n        <td id=\"LC712\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L713\" class=\"blob-num js-line-number\" data-line-number=\"713\"></td>\n        <td id=\"LC713\" class=\"blob-code blob-code-inner js-file-line\">  Core<span class=\"pl-k\">:</span> {} <span class=\"pl-c\">/* doc hack */</span></td>\n      </tr>\n      <tr>\n        <td id=\"L714\" class=\"blob-num js-line-number\" data-line-number=\"714\"></td>\n        <td id=\"LC714\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L715\" class=\"blob-num js-line-number\" data-line-number=\"715\"></td>\n        <td id=\"LC715\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L716\" class=\"blob-num js-line-number\" data-line-number=\"716\"></td>\n        <td id=\"LC716\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L717\" class=\"blob-num js-line-number\" data-line-number=\"717\"></td>\n        <td id=\"LC717\" class=\"blob-code blob-code-inner js-file-line\">  Core<span class=\"pl-k\">:</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">SequentialExecutor</span>().<span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">add</span>, <span class=\"pl-smi\">addAsync</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L718\" class=\"blob-num js-line-number\" data-line-number=\"718\"></td>\n        <td id=\"LC718\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">addAsync</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>VALIDATE_CREDENTIALS<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validate<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L719\" class=\"blob-num js-line-number\" data-line-number=\"719\"></td>\n        <td id=\"LC719\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">function</span> <span class=\"pl-en\">VALIDATE_CREDENTIALS</span>(<span class=\"pl-smi\">req</span>, <span class=\"pl-smi\">done</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L720\" class=\"blob-num js-line-number\" data-line-number=\"720\"></td>\n        <td id=\"LC720\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">signatureVersion</span>) <span class=\"pl-k\">return</span> <span class=\"pl-en\">done</span>(); <span class=\"pl-c\">// none</span></td>\n      </tr>\n      <tr>\n        <td id=\"L721\" class=\"blob-num js-line-number\" data-line-number=\"721\"></td>\n        <td id=\"LC721\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-en\">getCredentials</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L722\" class=\"blob-num js-line-number\" data-line-number=\"722\"></td>\n        <td id=\"LC722\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L723\" class=\"blob-num js-line-number\" data-line-number=\"723\"></td>\n        <td id=\"LC723\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(err,</td>\n      </tr>\n      <tr>\n        <td id=\"L724\" class=\"blob-num js-line-number\" data-line-number=\"724\"></td>\n        <td id=\"LC724\" class=\"blob-code blob-code-inner js-file-line\">            {code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>CredentialsError<span class=\"pl-pds\">&#39;</span></span>, message<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Missing credentials in config<span class=\"pl-pds\">&#39;</span></span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L725\" class=\"blob-num js-line-number\" data-line-number=\"725\"></td>\n        <td id=\"LC725\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L726\" class=\"blob-num js-line-number\" data-line-number=\"726\"></td>\n        <td id=\"LC726\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">done</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L727\" class=\"blob-num js-line-number\" data-line-number=\"727\"></td>\n        <td id=\"LC727\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L728\" class=\"blob-num js-line-number\" data-line-number=\"728\"></td>\n        <td id=\"LC728\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L729\" class=\"blob-num js-line-number\" data-line-number=\"729\"></td>\n        <td id=\"LC729\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L730\" class=\"blob-num js-line-number\" data-line-number=\"730\"></td>\n        <td id=\"LC730\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>VALIDATE_REGION<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validate<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">VALIDATE_REGION</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L731\" class=\"blob-num js-line-number\" data-line-number=\"731\"></td>\n        <td id=\"LC731\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">region</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">isGlobalEndpoint</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L732\" class=\"blob-num js-line-number\" data-line-number=\"732\"></td>\n        <td id=\"LC732\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(),</td>\n      </tr>\n      <tr>\n        <td id=\"L733\" class=\"blob-num js-line-number\" data-line-number=\"733\"></td>\n        <td id=\"LC733\" class=\"blob-code blob-code-inner js-file-line\">          {code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ConfigError<span class=\"pl-pds\">&#39;</span></span>, message<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Missing region in config<span class=\"pl-pds\">&#39;</span></span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L734\" class=\"blob-num js-line-number\" data-line-number=\"734\"></td>\n        <td id=\"LC734\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L735\" class=\"blob-num js-line-number\" data-line-number=\"735\"></td>\n        <td id=\"LC735\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L736\" class=\"blob-num js-line-number\" data-line-number=\"736\"></td>\n        <td id=\"LC736\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L737\" class=\"blob-num js-line-number\" data-line-number=\"737\"></td>\n        <td id=\"LC737\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>VALIDATE_PARAMETERS<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validate<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">VALIDATE_PARAMETERS</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L738\" class=\"blob-num js-line-number\" data-line-number=\"738\"></td>\n        <td id=\"LC738\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> rules <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>].<span class=\"pl-c1\">input</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L739\" class=\"blob-num js-line-number\" data-line-number=\"739\"></td>\n        <td id=\"LC739\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> validation <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">paramValidation</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L740\" class=\"blob-num js-line-number\" data-line-number=\"740\"></td>\n        <td id=\"LC740\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.ParamValidator</span>(validation).<span class=\"pl-en\">validate</span>(rules, <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">params</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L741\" class=\"blob-num js-line-number\" data-line-number=\"741\"></td>\n        <td id=\"LC741\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L742\" class=\"blob-num js-line-number\" data-line-number=\"742\"></td>\n        <td id=\"LC742\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L743\" class=\"blob-num js-line-number\" data-line-number=\"743\"></td>\n        <td id=\"LC743\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">addAsync</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>COMPUTE_SHA256<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterBuild<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">COMPUTE_SHA256</span>(<span class=\"pl-smi\">req</span>, <span class=\"pl-smi\">done</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L744\" class=\"blob-num js-line-number\" data-line-number=\"744\"></td>\n        <td id=\"LC744\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">req</span>.<span class=\"pl-en\">haltHandlersOnError</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L745\" class=\"blob-num js-line-number\" data-line-number=\"745\"></td>\n        <td id=\"LC745\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">signatureVersion</span>) <span class=\"pl-k\">return</span> <span class=\"pl-en\">done</span>(); <span class=\"pl-c\">// none</span></td>\n      </tr>\n      <tr>\n        <td id=\"L746\" class=\"blob-num js-line-number\" data-line-number=\"746\"></td>\n        <td id=\"LC746\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">getSignerClass</span>(req) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V4</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L747\" class=\"blob-num js-line-number\" data-line-number=\"747\"></td>\n        <td id=\"LC747\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> body <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L748\" class=\"blob-num js-line-number\" data-line-number=\"748\"></td>\n        <td id=\"LC748\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">computeSha256</span>(body, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">sha</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L749\" class=\"blob-num js-line-number\" data-line-number=\"749\"></td>\n        <td id=\"LC749\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L750\" class=\"blob-num js-line-number\" data-line-number=\"750\"></td>\n        <td id=\"LC750\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-en\">done</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L751\" class=\"blob-num js-line-number\" data-line-number=\"751\"></td>\n        <td id=\"LC751\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L752\" class=\"blob-num js-line-number\" data-line-number=\"752\"></td>\n        <td id=\"LC752\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L753\" class=\"blob-num js-line-number\" data-line-number=\"753\"></td>\n        <td id=\"LC753\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Content-Sha256<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> sha;</td>\n      </tr>\n      <tr>\n        <td id=\"L754\" class=\"blob-num js-line-number\" data-line-number=\"754\"></td>\n        <td id=\"LC754\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-en\">done</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L755\" class=\"blob-num js-line-number\" data-line-number=\"755\"></td>\n        <td id=\"LC755\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L756\" class=\"blob-num js-line-number\" data-line-number=\"756\"></td>\n        <td id=\"LC756\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L757\" class=\"blob-num js-line-number\" data-line-number=\"757\"></td>\n        <td id=\"LC757\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L758\" class=\"blob-num js-line-number\" data-line-number=\"758\"></td>\n        <td id=\"LC758\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">done</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L759\" class=\"blob-num js-line-number\" data-line-number=\"759\"></td>\n        <td id=\"LC759\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L760\" class=\"blob-num js-line-number\" data-line-number=\"760\"></td>\n        <td id=\"LC760\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L761\" class=\"blob-num js-line-number\" data-line-number=\"761\"></td>\n        <td id=\"LC761\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L762\" class=\"blob-num js-line-number\" data-line-number=\"762\"></td>\n        <td id=\"LC762\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>SET_CONTENT_LENGTH<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterBuild<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">SET_CONTENT_LENGTH</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L763\" class=\"blob-num js-line-number\" data-line-number=\"763\"></td>\n        <td id=\"LC763\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Length<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L764\" class=\"blob-num js-line-number\" data-line-number=\"764\"></td>\n        <td id=\"LC764\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">string</span>.<span class=\"pl-en\">byteLength</span>(<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L765\" class=\"blob-num js-line-number\" data-line-number=\"765\"></td>\n        <td id=\"LC765\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Length<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> length;</td>\n      </tr>\n      <tr>\n        <td id=\"L766\" class=\"blob-num js-line-number\" data-line-number=\"766\"></td>\n        <td id=\"LC766\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L767\" class=\"blob-num js-line-number\" data-line-number=\"767\"></td>\n        <td id=\"LC767\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L768\" class=\"blob-num js-line-number\" data-line-number=\"768\"></td>\n        <td id=\"LC768\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L769\" class=\"blob-num js-line-number\" data-line-number=\"769\"></td>\n        <td id=\"LC769\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>SET_HTTP_HOST<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterBuild<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">SET_HTTP_HOST</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L770\" class=\"blob-num js-line-number\" data-line-number=\"770\"></td>\n        <td id=\"LC770\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Host<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">endpoint</span>.<span class=\"pl-c1\">host</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L771\" class=\"blob-num js-line-number\" data-line-number=\"771\"></td>\n        <td id=\"LC771\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L772\" class=\"blob-num js-line-number\" data-line-number=\"772\"></td>\n        <td id=\"LC772\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L773\" class=\"blob-num js-line-number\" data-line-number=\"773\"></td>\n        <td id=\"LC773\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RESTART<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>restart<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">RESTART</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L774\" class=\"blob-num js-line-number\" data-line-number=\"774\"></td>\n        <td id=\"LC774\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> err <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L775\" class=\"blob-num js-line-number\" data-line-number=\"775\"></td>\n        <td id=\"LC775\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>err <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">retryable</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L776\" class=\"blob-num js-line-number\" data-line-number=\"776\"></td>\n        <td id=\"LC776\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L777\" class=\"blob-num js-line-number\" data-line-number=\"777\"></td>\n        <td id=\"LC777\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">httpRequest</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.HttpRequest</span>(</td>\n      </tr>\n      <tr>\n        <td id=\"L778\" class=\"blob-num js-line-number\" data-line-number=\"778\"></td>\n        <td id=\"LC778\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">endpoint</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L779\" class=\"blob-num js-line-number\" data-line-number=\"779\"></td>\n        <td id=\"LC779\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">region</span></td>\n      </tr>\n      <tr>\n        <td id=\"L780\" class=\"blob-num js-line-number\" data-line-number=\"780\"></td>\n        <td id=\"LC780\" class=\"blob-code blob-code-inner js-file-line\">      );</td>\n      </tr>\n      <tr>\n        <td id=\"L781\" class=\"blob-num js-line-number\" data-line-number=\"781\"></td>\n        <td id=\"LC781\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L782\" class=\"blob-num js-line-number\" data-line-number=\"782\"></td>\n        <td id=\"LC782\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">retryCount</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">maxRetries</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L783\" class=\"blob-num js-line-number\" data-line-number=\"783\"></td>\n        <td id=\"LC783\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">retryCount</span><span class=\"pl-k\">++</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L784\" class=\"blob-num js-line-number\" data-line-number=\"784\"></td>\n        <td id=\"LC784\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L785\" class=\"blob-num js-line-number\" data-line-number=\"785\"></td>\n        <td id=\"LC785\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L786\" class=\"blob-num js-line-number\" data-line-number=\"786\"></td>\n        <td id=\"LC786\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L787\" class=\"blob-num js-line-number\" data-line-number=\"787\"></td>\n        <td id=\"LC787\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L788\" class=\"blob-num js-line-number\" data-line-number=\"788\"></td>\n        <td id=\"LC788\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L789\" class=\"blob-num js-line-number\" data-line-number=\"789\"></td>\n        <td id=\"LC789\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">addAsync</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>SIGN<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sign<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">SIGN</span>(<span class=\"pl-smi\">req</span>, <span class=\"pl-smi\">done</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L790\" class=\"blob-num js-line-number\" data-line-number=\"790\"></td>\n        <td id=\"LC790\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">signatureVersion</span>) <span class=\"pl-k\">return</span> <span class=\"pl-en\">done</span>(); <span class=\"pl-c\">// none</span></td>\n      </tr>\n      <tr>\n        <td id=\"L791\" class=\"blob-num js-line-number\" data-line-number=\"791\"></td>\n        <td id=\"LC791\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L792\" class=\"blob-num js-line-number\" data-line-number=\"792\"></td>\n        <td id=\"LC792\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-en\">getCredentials</span>(<span class=\"pl-k\">function</span> (<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">credentials</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L793\" class=\"blob-num js-line-number\" data-line-number=\"793\"></td>\n        <td id=\"LC793\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L794\" class=\"blob-num js-line-number\" data-line-number=\"794\"></td>\n        <td id=\"LC794\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> err;</td>\n      </tr>\n      <tr>\n        <td id=\"L795\" class=\"blob-num js-line-number\" data-line-number=\"795\"></td>\n        <td id=\"LC795\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">return</span> <span class=\"pl-en\">done</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L796\" class=\"blob-num js-line-number\" data-line-number=\"796\"></td>\n        <td id=\"LC796\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L797\" class=\"blob-num js-line-number\" data-line-number=\"797\"></td>\n        <td id=\"LC797\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L798\" class=\"blob-num js-line-number\" data-line-number=\"798\"></td>\n        <td id=\"LC798\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L799\" class=\"blob-num js-line-number\" data-line-number=\"799\"></td>\n        <td id=\"LC799\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> date <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-c1\">getDate</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L800\" class=\"blob-num js-line-number\" data-line-number=\"800\"></td>\n        <td id=\"LC800\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> SignerClass <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">getSignerClass</span>(req);</td>\n      </tr>\n      <tr>\n        <td id=\"L801\" class=\"blob-num js-line-number\" data-line-number=\"801\"></td>\n        <td id=\"LC801\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> signer <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">SignerClass</span>(<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L802\" class=\"blob-num js-line-number\" data-line-number=\"802\"></td>\n        <td id=\"LC802\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">signingName</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">endpointPrefix</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L803\" class=\"blob-num js-line-number\" data-line-number=\"803\"></td>\n        <td id=\"LC803\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">signatureCache</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L804\" class=\"blob-num js-line-number\" data-line-number=\"804\"></td>\n        <td id=\"LC804\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L805\" class=\"blob-num js-line-number\" data-line-number=\"805\"></td>\n        <td id=\"LC805\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Authorization<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L806\" class=\"blob-num js-line-number\" data-line-number=\"806\"></td>\n        <td id=\"LC806\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Date<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L807\" class=\"blob-num js-line-number\" data-line-number=\"807\"></td>\n        <td id=\"LC807\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Date<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L808\" class=\"blob-num js-line-number\" data-line-number=\"808\"></td>\n        <td id=\"LC808\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L809\" class=\"blob-num js-line-number\" data-line-number=\"809\"></td>\n        <td id=\"LC809\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">signer</span>.<span class=\"pl-en\">addAuthorization</span>(credentials, date);</td>\n      </tr>\n      <tr>\n        <td id=\"L810\" class=\"blob-num js-line-number\" data-line-number=\"810\"></td>\n        <td id=\"LC810\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">signedAt</span> <span class=\"pl-k\">=</span> date;</td>\n      </tr>\n      <tr>\n        <td id=\"L811\" class=\"blob-num js-line-number\" data-line-number=\"811\"></td>\n        <td id=\"LC811\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">catch</span> (e) {</td>\n      </tr>\n      <tr>\n        <td id=\"L812\" class=\"blob-num js-line-number\" data-line-number=\"812\"></td>\n        <td id=\"LC812\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> e;</td>\n      </tr>\n      <tr>\n        <td id=\"L813\" class=\"blob-num js-line-number\" data-line-number=\"813\"></td>\n        <td id=\"LC813\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L814\" class=\"blob-num js-line-number\" data-line-number=\"814\"></td>\n        <td id=\"LC814\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">done</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L815\" class=\"blob-num js-line-number\" data-line-number=\"815\"></td>\n        <td id=\"LC815\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L816\" class=\"blob-num js-line-number\" data-line-number=\"816\"></td>\n        <td id=\"LC816\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L817\" class=\"blob-num js-line-number\" data-line-number=\"817\"></td>\n        <td id=\"LC817\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L818\" class=\"blob-num js-line-number\" data-line-number=\"818\"></td>\n        <td id=\"LC818\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>VALIDATE_RESPONSE<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validateResponse<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">VALIDATE_RESPONSE</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L819\" class=\"blob-num js-line-number\" data-line-number=\"819\"></td>\n        <td id=\"LC819\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">successfulResponse</span>(resp, <span class=\"pl-v\">this</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L820\" class=\"blob-num js-line-number\" data-line-number=\"820\"></td>\n        <td id=\"LC820\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L821\" class=\"blob-num js-line-number\" data-line-number=\"821\"></td>\n        <td id=\"LC821\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L822\" class=\"blob-num js-line-number\" data-line-number=\"822\"></td>\n        <td id=\"LC822\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L823\" class=\"blob-num js-line-number\" data-line-number=\"823\"></td>\n        <td id=\"LC823\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L824\" class=\"blob-num js-line-number\" data-line-number=\"824\"></td>\n        <td id=\"LC824\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(),</td>\n      </tr>\n      <tr>\n        <td id=\"L825\" class=\"blob-num js-line-number\" data-line-number=\"825\"></td>\n        <td id=\"LC825\" class=\"blob-code blob-code-inner js-file-line\">          {code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>UnknownError<span class=\"pl-pds\">&#39;</span></span>, message<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>An unknown error occurred.<span class=\"pl-pds\">&#39;</span></span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L826\" class=\"blob-num js-line-number\" data-line-number=\"826\"></td>\n        <td id=\"LC826\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L827\" class=\"blob-num js-line-number\" data-line-number=\"827\"></td>\n        <td id=\"LC827\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L828\" class=\"blob-num js-line-number\" data-line-number=\"828\"></td>\n        <td id=\"LC828\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L829\" class=\"blob-num js-line-number\" data-line-number=\"829\"></td>\n        <td id=\"LC829\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">addAsync</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>SEND<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>send<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">SEND</span>(<span class=\"pl-smi\">resp</span>, <span class=\"pl-smi\">done</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L830\" class=\"blob-num js-line-number\" data-line-number=\"830\"></td>\n        <td id=\"LC830\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">_abortCallback</span> <span class=\"pl-k\">=</span> done;</td>\n      </tr>\n      <tr>\n        <td id=\"L831\" class=\"blob-num js-line-number\" data-line-number=\"831\"></td>\n        <td id=\"LC831\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L832\" class=\"blob-num js-line-number\" data-line-number=\"832\"></td>\n        <td id=\"LC832\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L833\" class=\"blob-num js-line-number\" data-line-number=\"833\"></td>\n        <td id=\"LC833\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L834\" class=\"blob-num js-line-number\" data-line-number=\"834\"></td>\n        <td id=\"LC834\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">function</span> <span class=\"pl-en\">callback</span>(<span class=\"pl-smi\">httpResp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L835\" class=\"blob-num js-line-number\" data-line-number=\"835\"></td>\n        <td id=\"LC835\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">stream</span> <span class=\"pl-k\">=</span> httpResp;</td>\n      </tr>\n      <tr>\n        <td id=\"L836\" class=\"blob-num js-line-number\" data-line-number=\"836\"></td>\n        <td id=\"LC836\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L837\" class=\"blob-num js-line-number\" data-line-number=\"837\"></td>\n        <td id=\"LC837\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">httpResp</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>headers<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">onHeaders</span>(<span class=\"pl-smi\">statusCode</span>, <span class=\"pl-smi\">headers</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L838\" class=\"blob-num js-line-number\" data-line-number=\"838\"></td>\n        <td id=\"LC838\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpHeaders<span class=\"pl-pds\">&#39;</span></span>, [statusCode, headers, resp]);</td>\n      </tr>\n      <tr>\n        <td id=\"L839\" class=\"blob-num js-line-number\" data-line-number=\"839\"></td>\n        <td id=\"LC839\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L840\" class=\"blob-num js-line-number\" data-line-number=\"840\"></td>\n        <td id=\"LC840\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">streaming</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L841\" class=\"blob-num js-line-number\" data-line-number=\"841\"></td>\n        <td id=\"LC841\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">HttpClient</span>.<span class=\"pl-smi\">streamsApiVersion</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">2</span>) { <span class=\"pl-c\">// streams2 API check</span></td>\n      </tr>\n      <tr>\n        <td id=\"L842\" class=\"blob-num js-line-number\" data-line-number=\"842\"></td>\n        <td id=\"LC842\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-smi\">httpResp</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>readable<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">onReadable</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L843\" class=\"blob-num js-line-number\" data-line-number=\"843\"></td>\n        <td id=\"LC843\" class=\"blob-code blob-code-inner js-file-line\">                <span class=\"pl-k\">var</span> data <span class=\"pl-k\">=</span> <span class=\"pl-smi\">httpResp</span>.<span class=\"pl-en\">read</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L844\" class=\"blob-num js-line-number\" data-line-number=\"844\"></td>\n        <td id=\"LC844\" class=\"blob-code blob-code-inner js-file-line\">                <span class=\"pl-k\">if</span> (data <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L845\" class=\"blob-num js-line-number\" data-line-number=\"845\"></td>\n        <td id=\"LC845\" class=\"blob-code blob-code-inner js-file-line\">                  <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpData<span class=\"pl-pds\">&#39;</span></span>, [data, resp]);</td>\n      </tr>\n      <tr>\n        <td id=\"L846\" class=\"blob-num js-line-number\" data-line-number=\"846\"></td>\n        <td id=\"LC846\" class=\"blob-code blob-code-inner js-file-line\">                }</td>\n      </tr>\n      <tr>\n        <td id=\"L847\" class=\"blob-num js-line-number\" data-line-number=\"847\"></td>\n        <td id=\"LC847\" class=\"blob-code blob-code-inner js-file-line\">              });</td>\n      </tr>\n      <tr>\n        <td id=\"L848\" class=\"blob-num js-line-number\" data-line-number=\"848\"></td>\n        <td id=\"LC848\" class=\"blob-code blob-code-inner js-file-line\">            } <span class=\"pl-k\">else</span> { <span class=\"pl-c\">// legacy streams API</span></td>\n      </tr>\n      <tr>\n        <td id=\"L849\" class=\"blob-num js-line-number\" data-line-number=\"849\"></td>\n        <td id=\"LC849\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-smi\">httpResp</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>data<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">onData</span>(<span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L850\" class=\"blob-num js-line-number\" data-line-number=\"850\"></td>\n        <td id=\"LC850\" class=\"blob-code blob-code-inner js-file-line\">                <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpData<span class=\"pl-pds\">&#39;</span></span>, [data, resp]);</td>\n      </tr>\n      <tr>\n        <td id=\"L851\" class=\"blob-num js-line-number\" data-line-number=\"851\"></td>\n        <td id=\"LC851\" class=\"blob-code blob-code-inner js-file-line\">              });</td>\n      </tr>\n      <tr>\n        <td id=\"L852\" class=\"blob-num js-line-number\" data-line-number=\"852\"></td>\n        <td id=\"LC852\" class=\"blob-code blob-code-inner js-file-line\">            }</td>\n      </tr>\n      <tr>\n        <td id=\"L853\" class=\"blob-num js-line-number\" data-line-number=\"853\"></td>\n        <td id=\"LC853\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L854\" class=\"blob-num js-line-number\" data-line-number=\"854\"></td>\n        <td id=\"LC854\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L855\" class=\"blob-num js-line-number\" data-line-number=\"855\"></td>\n        <td id=\"LC855\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L856\" class=\"blob-num js-line-number\" data-line-number=\"856\"></td>\n        <td id=\"LC856\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">httpResp</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>end<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">onEnd</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L857\" class=\"blob-num js-line-number\" data-line-number=\"857\"></td>\n        <td id=\"LC857\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpDone<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L858\" class=\"blob-num js-line-number\" data-line-number=\"858\"></td>\n        <td id=\"LC858\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">done</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L859\" class=\"blob-num js-line-number\" data-line-number=\"859\"></td>\n        <td id=\"LC859\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L860\" class=\"blob-num js-line-number\" data-line-number=\"860\"></td>\n        <td id=\"LC860\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L861\" class=\"blob-num js-line-number\" data-line-number=\"861\"></td>\n        <td id=\"LC861\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L862\" class=\"blob-num js-line-number\" data-line-number=\"862\"></td>\n        <td id=\"LC862\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">function</span> <span class=\"pl-en\">progress</span>(<span class=\"pl-smi\">httpResp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L863\" class=\"blob-num js-line-number\" data-line-number=\"863\"></td>\n        <td id=\"LC863\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">httpResp</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sendProgress<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">onSendProgress</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L864\" class=\"blob-num js-line-number\" data-line-number=\"864\"></td>\n        <td id=\"LC864\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpUploadProgress<span class=\"pl-pds\">&#39;</span></span>, [value, resp]);</td>\n      </tr>\n      <tr>\n        <td id=\"L865\" class=\"blob-num js-line-number\" data-line-number=\"865\"></td>\n        <td id=\"LC865\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L866\" class=\"blob-num js-line-number\" data-line-number=\"866\"></td>\n        <td id=\"LC866\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L867\" class=\"blob-num js-line-number\" data-line-number=\"867\"></td>\n        <td id=\"LC867\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">httpResp</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>receiveProgress<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">onReceiveProgress</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L868\" class=\"blob-num js-line-number\" data-line-number=\"868\"></td>\n        <td id=\"LC868\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpDownloadProgress<span class=\"pl-pds\">&#39;</span></span>, [value, resp]);</td>\n      </tr>\n      <tr>\n        <td id=\"L869\" class=\"blob-num js-line-number\" data-line-number=\"869\"></td>\n        <td id=\"LC869\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L870\" class=\"blob-num js-line-number\" data-line-number=\"870\"></td>\n        <td id=\"LC870\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L871\" class=\"blob-num js-line-number\" data-line-number=\"871\"></td>\n        <td id=\"LC871\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L872\" class=\"blob-num js-line-number\" data-line-number=\"872\"></td>\n        <td id=\"LC872\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">function</span> <span class=\"pl-en\">error</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L873\" class=\"blob-num js-line-number\" data-line-number=\"873\"></td>\n        <td id=\"LC873\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(err, {</td>\n      </tr>\n      <tr>\n        <td id=\"L874\" class=\"blob-num js-line-number\" data-line-number=\"874\"></td>\n        <td id=\"LC874\" class=\"blob-code blob-code-inner js-file-line\">          code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>NetworkingError<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L875\" class=\"blob-num js-line-number\" data-line-number=\"875\"></td>\n        <td id=\"LC875\" class=\"blob-code blob-code-inner js-file-line\">          region<span class=\"pl-k\">:</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">region</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L876\" class=\"blob-num js-line-number\" data-line-number=\"876\"></td>\n        <td id=\"LC876\" class=\"blob-code blob-code-inner js-file-line\">          hostname<span class=\"pl-k\">:</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">endpoint</span>.<span class=\"pl-c1\">hostname</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L877\" class=\"blob-num js-line-number\" data-line-number=\"877\"></td>\n        <td id=\"LC877\" class=\"blob-code blob-code-inner js-file-line\">          retryable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L878\" class=\"blob-num js-line-number\" data-line-number=\"878\"></td>\n        <td id=\"LC878\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L879\" class=\"blob-num js-line-number\" data-line-number=\"879\"></td>\n        <td id=\"LC879\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpError<span class=\"pl-pds\">&#39;</span></span>, [<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>, resp], <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L880\" class=\"blob-num js-line-number\" data-line-number=\"880\"></td>\n        <td id=\"LC880\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">done</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L881\" class=\"blob-num js-line-number\" data-line-number=\"881\"></td>\n        <td id=\"LC881\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L882\" class=\"blob-num js-line-number\" data-line-number=\"882\"></td>\n        <td id=\"LC882\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L883\" class=\"blob-num js-line-number\" data-line-number=\"883\"></td>\n        <td id=\"LC883\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L884\" class=\"blob-num js-line-number\" data-line-number=\"884\"></td>\n        <td id=\"LC884\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">function</span> <span class=\"pl-en\">executeSend</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L885\" class=\"blob-num js-line-number\" data-line-number=\"885\"></td>\n        <td id=\"LC885\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> http <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">HttpClient</span>.<span class=\"pl-en\">getInstance</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L886\" class=\"blob-num js-line-number\" data-line-number=\"886\"></td>\n        <td id=\"LC886\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> httpOptions <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">httpOptions</span> <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L887\" class=\"blob-num js-line-number\" data-line-number=\"887\"></td>\n        <td id=\"LC887\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L888\" class=\"blob-num js-line-number\" data-line-number=\"888\"></td>\n        <td id=\"LC888\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> stream <span class=\"pl-k\">=</span> <span class=\"pl-smi\">http</span>.<span class=\"pl-en\">handleRequest</span>(<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>, httpOptions,</td>\n      </tr>\n      <tr>\n        <td id=\"L889\" class=\"blob-num js-line-number\" data-line-number=\"889\"></td>\n        <td id=\"LC889\" class=\"blob-code blob-code-inner js-file-line\">                                          callback, error);</td>\n      </tr>\n      <tr>\n        <td id=\"L890\" class=\"blob-num js-line-number\" data-line-number=\"890\"></td>\n        <td id=\"LC890\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">progress</span>(stream);</td>\n      </tr>\n      <tr>\n        <td id=\"L891\" class=\"blob-num js-line-number\" data-line-number=\"891\"></td>\n        <td id=\"LC891\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">catch</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L892\" class=\"blob-num js-line-number\" data-line-number=\"892\"></td>\n        <td id=\"LC892\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">error</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L893\" class=\"blob-num js-line-number\" data-line-number=\"893\"></td>\n        <td id=\"LC893\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L894\" class=\"blob-num js-line-number\" data-line-number=\"894\"></td>\n        <td id=\"LC894\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L895\" class=\"blob-num js-line-number\" data-line-number=\"895\"></td>\n        <td id=\"LC895\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L896\" class=\"blob-num js-line-number\" data-line-number=\"896\"></td>\n        <td id=\"LC896\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> timeDiff <span class=\"pl-k\">=</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-c1\">getDate</span>() <span class=\"pl-k\">-</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">signedAt</span>) <span class=\"pl-k\">/</span> <span class=\"pl-c1\">1000</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L897\" class=\"blob-num js-line-number\" data-line-number=\"897\"></td>\n        <td id=\"LC897\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (timeDiff <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">60</span> <span class=\"pl-k\">*</span> <span class=\"pl-c1\">10</span>) { <span class=\"pl-c\">// if we signed 10min ago, re-sign</span></td>\n      </tr>\n      <tr>\n        <td id=\"L898\" class=\"blob-num js-line-number\" data-line-number=\"898\"></td>\n        <td id=\"LC898\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sign<span class=\"pl-pds\">&#39;</span></span>, [<span class=\"pl-v\">this</span>], <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L899\" class=\"blob-num js-line-number\" data-line-number=\"899\"></td>\n        <td id=\"LC899\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (err) <span class=\"pl-en\">done</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L900\" class=\"blob-num js-line-number\" data-line-number=\"900\"></td>\n        <td id=\"LC900\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">else</span> <span class=\"pl-en\">executeSend</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L901\" class=\"blob-num js-line-number\" data-line-number=\"901\"></td>\n        <td id=\"LC901\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L902\" class=\"blob-num js-line-number\" data-line-number=\"902\"></td>\n        <td id=\"LC902\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L903\" class=\"blob-num js-line-number\" data-line-number=\"903\"></td>\n        <td id=\"LC903\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">executeSend</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L904\" class=\"blob-num js-line-number\" data-line-number=\"904\"></td>\n        <td id=\"LC904\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L905\" class=\"blob-num js-line-number\" data-line-number=\"905\"></td>\n        <td id=\"LC905\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L906\" class=\"blob-num js-line-number\" data-line-number=\"906\"></td>\n        <td id=\"LC906\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L907\" class=\"blob-num js-line-number\" data-line-number=\"907\"></td>\n        <td id=\"LC907\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>HTTP_HEADERS<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpHeaders<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L908\" class=\"blob-num js-line-number\" data-line-number=\"908\"></td>\n        <td id=\"LC908\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">function</span> <span class=\"pl-en\">HTTP_HEADERS</span>(<span class=\"pl-smi\">statusCode</span>, <span class=\"pl-smi\">headers</span>, <span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L909\" class=\"blob-num js-line-number\" data-line-number=\"909\"></td>\n        <td id=\"LC909\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">statusCode</span> <span class=\"pl-k\">=</span> statusCode;</td>\n      </tr>\n      <tr>\n        <td id=\"L910\" class=\"blob-num js-line-number\" data-line-number=\"910\"></td>\n        <td id=\"LC910\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">headers</span> <span class=\"pl-k\">=</span> headers;</td>\n      </tr>\n      <tr>\n        <td id=\"L911\" class=\"blob-num js-line-number\" data-line-number=\"911\"></td>\n        <td id=\"LC911\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.util</span>.<span class=\"pl-en\">Buffer</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L912\" class=\"blob-num js-line-number\" data-line-number=\"912\"></td>\n        <td id=\"LC912\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">buffers</span> <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L913\" class=\"blob-num js-line-number\" data-line-number=\"913\"></td>\n        <td id=\"LC913\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">numBytes</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L914\" class=\"blob-num js-line-number\" data-line-number=\"914\"></td>\n        <td id=\"LC914\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> dateHeader <span class=\"pl-k\">=</span> <span class=\"pl-smi\">headers</span>.<span class=\"pl-smi\">date</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">headers</span>.<span class=\"pl-smi\">Date</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L915\" class=\"blob-num js-line-number\" data-line-number=\"915\"></td>\n        <td id=\"LC915\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (dateHeader) {</td>\n      </tr>\n      <tr>\n        <td id=\"L916\" class=\"blob-num js-line-number\" data-line-number=\"916\"></td>\n        <td id=\"LC916\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> serverTime <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Date</span>.<span class=\"pl-c1\">parse</span>(dateHeader);</td>\n      </tr>\n      <tr>\n        <td id=\"L917\" class=\"blob-num js-line-number\" data-line-number=\"917\"></td>\n        <td id=\"LC917\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">correctClockSkew</span></td>\n      </tr>\n      <tr>\n        <td id=\"L918\" class=\"blob-num js-line-number\" data-line-number=\"918\"></td>\n        <td id=\"LC918\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isClockSkewed</span>(serverTime)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L919\" class=\"blob-num js-line-number\" data-line-number=\"919\"></td>\n        <td id=\"LC919\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">applyClockOffset</span>(serverTime);</td>\n      </tr>\n      <tr>\n        <td id=\"L920\" class=\"blob-num js-line-number\" data-line-number=\"920\"></td>\n        <td id=\"LC920\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L921\" class=\"blob-num js-line-number\" data-line-number=\"921\"></td>\n        <td id=\"LC921\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L922\" class=\"blob-num js-line-number\" data-line-number=\"922\"></td>\n        <td id=\"LC922\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L923\" class=\"blob-num js-line-number\" data-line-number=\"923\"></td>\n        <td id=\"LC923\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L924\" class=\"blob-num js-line-number\" data-line-number=\"924\"></td>\n        <td id=\"LC924\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>HTTP_DATA<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">HTTP_DATA</span>(<span class=\"pl-smi\">chunk</span>, <span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L925\" class=\"blob-num js-line-number\" data-line-number=\"925\"></td>\n        <td id=\"LC925\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (chunk) {</td>\n      </tr>\n      <tr>\n        <td id=\"L926\" class=\"blob-num js-line-number\" data-line-number=\"926\"></td>\n        <td id=\"LC926\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isNode</span>()) {</td>\n      </tr>\n      <tr>\n        <td id=\"L927\" class=\"blob-num js-line-number\" data-line-number=\"927\"></td>\n        <td id=\"LC927\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">numBytes</span> <span class=\"pl-k\">+=</span> <span class=\"pl-smi\">chunk</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L928\" class=\"blob-num js-line-number\" data-line-number=\"928\"></td>\n        <td id=\"LC928\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L929\" class=\"blob-num js-line-number\" data-line-number=\"929\"></td>\n        <td id=\"LC929\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> total <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>content-length<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L930\" class=\"blob-num js-line-number\" data-line-number=\"930\"></td>\n        <td id=\"LC930\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> progress <span class=\"pl-k\">=</span> { loaded<span class=\"pl-k\">:</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">numBytes</span>, total<span class=\"pl-k\">:</span> total };</td>\n      </tr>\n      <tr>\n        <td id=\"L931\" class=\"blob-num js-line-number\" data-line-number=\"931\"></td>\n        <td id=\"LC931\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpDownloadProgress<span class=\"pl-pds\">&#39;</span></span>, [progress, resp]);</td>\n      </tr>\n      <tr>\n        <td id=\"L932\" class=\"blob-num js-line-number\" data-line-number=\"932\"></td>\n        <td id=\"LC932\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L933\" class=\"blob-num js-line-number\" data-line-number=\"933\"></td>\n        <td id=\"LC933\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L934\" class=\"blob-num js-line-number\" data-line-number=\"934\"></td>\n        <td id=\"LC934\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">buffers</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.util</span>.<span class=\"pl-en\">Buffer</span>(chunk));</td>\n      </tr>\n      <tr>\n        <td id=\"L935\" class=\"blob-num js-line-number\" data-line-number=\"935\"></td>\n        <td id=\"LC935\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L936\" class=\"blob-num js-line-number\" data-line-number=\"936\"></td>\n        <td id=\"LC936\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L937\" class=\"blob-num js-line-number\" data-line-number=\"937\"></td>\n        <td id=\"LC937\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L938\" class=\"blob-num js-line-number\" data-line-number=\"938\"></td>\n        <td id=\"LC938\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>HTTP_DONE<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpDone<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">HTTP_DONE</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L939\" class=\"blob-num js-line-number\" data-line-number=\"939\"></td>\n        <td id=\"LC939\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">buffers</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">buffers</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L940\" class=\"blob-num js-line-number\" data-line-number=\"940\"></td>\n        <td id=\"LC940\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> body <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">buffer</span>.<span class=\"pl-c1\">concat</span>(<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">buffers</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L941\" class=\"blob-num js-line-number\" data-line-number=\"941\"></td>\n        <td id=\"LC941\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> body;</td>\n      </tr>\n      <tr>\n        <td id=\"L942\" class=\"blob-num js-line-number\" data-line-number=\"942\"></td>\n        <td id=\"LC942\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L943\" class=\"blob-num js-line-number\" data-line-number=\"943\"></td>\n        <td id=\"LC943\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">numBytes</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L944\" class=\"blob-num js-line-number\" data-line-number=\"944\"></td>\n        <td id=\"LC944\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">buffers</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L945\" class=\"blob-num js-line-number\" data-line-number=\"945\"></td>\n        <td id=\"LC945\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L946\" class=\"blob-num js-line-number\" data-line-number=\"946\"></td>\n        <td id=\"LC946\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L947\" class=\"blob-num js-line-number\" data-line-number=\"947\"></td>\n        <td id=\"LC947\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>FINALIZE_ERROR<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">FINALIZE_ERROR</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L948\" class=\"blob-num js-line-number\" data-line-number=\"948\"></td>\n        <td id=\"LC948\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">statusCode</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L949\" class=\"blob-num js-line-number\" data-line-number=\"949\"></td>\n        <td id=\"LC949\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">statusCode</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">statusCode</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L950\" class=\"blob-num js-line-number\" data-line-number=\"950\"></td>\n        <td id=\"LC950\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryable</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L951\" class=\"blob-num js-line-number\" data-line-number=\"951\"></td>\n        <td id=\"LC951\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryable</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">retryableError</span>(<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L952\" class=\"blob-num js-line-number\" data-line-number=\"952\"></td>\n        <td id=\"LC952\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L953\" class=\"blob-num js-line-number\" data-line-number=\"953\"></td>\n        <td id=\"LC953\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L954\" class=\"blob-num js-line-number\" data-line-number=\"954\"></td>\n        <td id=\"LC954\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L955\" class=\"blob-num js-line-number\" data-line-number=\"955\"></td>\n        <td id=\"LC955\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L956\" class=\"blob-num js-line-number\" data-line-number=\"956\"></td>\n        <td id=\"LC956\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>INVALIDATE_CREDENTIALS<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">INVALIDATE_CREDENTIALS</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L957\" class=\"blob-num js-line-number\" data-line-number=\"957\"></td>\n        <td id=\"LC957\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L958\" class=\"blob-num js-line-number\" data-line-number=\"958\"></td>\n        <td id=\"LC958\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">switch</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L959\" class=\"blob-num js-line-number\" data-line-number=\"959\"></td>\n        <td id=\"LC959\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RequestExpired<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c\">// EC2 only</span></td>\n      </tr>\n      <tr>\n        <td id=\"L960\" class=\"blob-num js-line-number\" data-line-number=\"960\"></td>\n        <td id=\"LC960\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ExpiredTokenException<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L961\" class=\"blob-num js-line-number\" data-line-number=\"961\"></td>\n        <td id=\"LC961\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ExpiredToken<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L962\" class=\"blob-num js-line-number\" data-line-number=\"962\"></td>\n        <td id=\"LC962\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryable</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L963\" class=\"blob-num js-line-number\" data-line-number=\"963\"></td>\n        <td id=\"LC963\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">expired</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L964\" class=\"blob-num js-line-number\" data-line-number=\"964\"></td>\n        <td id=\"LC964\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L965\" class=\"blob-num js-line-number\" data-line-number=\"965\"></td>\n        <td id=\"LC965\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L966\" class=\"blob-num js-line-number\" data-line-number=\"966\"></td>\n        <td id=\"LC966\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L967\" class=\"blob-num js-line-number\" data-line-number=\"967\"></td>\n        <td id=\"LC967\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXPIRED_SIGNATURE<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">EXPIRED_SIGNATURE</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L968\" class=\"blob-num js-line-number\" data-line-number=\"968\"></td>\n        <td id=\"LC968\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> err <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L969\" class=\"blob-num js-line-number\" data-line-number=\"969\"></td>\n        <td id=\"LC969\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>err) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L970\" class=\"blob-num js-line-number\" data-line-number=\"970\"></td>\n        <td id=\"LC970\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L971\" class=\"blob-num js-line-number\" data-line-number=\"971\"></td>\n        <td id=\"LC971\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">err</span>.<span class=\"pl-c1\">code</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>Signature<span class=\"pl-pds\">/</span></span>) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">message</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>expired<span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L972\" class=\"blob-num js-line-number\" data-line-number=\"972\"></td>\n        <td id=\"LC972\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryable</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L973\" class=\"blob-num js-line-number\" data-line-number=\"973\"></td>\n        <td id=\"LC973\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L974\" class=\"blob-num js-line-number\" data-line-number=\"974\"></td>\n        <td id=\"LC974\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L975\" class=\"blob-num js-line-number\" data-line-number=\"975\"></td>\n        <td id=\"LC975\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L976\" class=\"blob-num js-line-number\" data-line-number=\"976\"></td>\n        <td id=\"LC976\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L977\" class=\"blob-num js-line-number\" data-line-number=\"977\"></td>\n        <td id=\"LC977\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>CLOCK_SKEWED<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">CLOCK_SKEWED</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L978\" class=\"blob-num js-line-number\" data-line-number=\"978\"></td>\n        <td id=\"LC978\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L979\" class=\"blob-num js-line-number\" data-line-number=\"979\"></td>\n        <td id=\"LC979\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">clockSkewError</span>(<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L980\" class=\"blob-num js-line-number\" data-line-number=\"980\"></td>\n        <td id=\"LC980\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">correctClockSkew</span></td>\n      </tr>\n      <tr>\n        <td id=\"L981\" class=\"blob-num js-line-number\" data-line-number=\"981\"></td>\n        <td id=\"LC981\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">isClockSkewed</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L982\" class=\"blob-num js-line-number\" data-line-number=\"982\"></td>\n        <td id=\"LC982\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryable</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L983\" class=\"blob-num js-line-number\" data-line-number=\"983\"></td>\n        <td id=\"LC983\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L984\" class=\"blob-num js-line-number\" data-line-number=\"984\"></td>\n        <td id=\"LC984\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L985\" class=\"blob-num js-line-number\" data-line-number=\"985\"></td>\n        <td id=\"LC985\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L986\" class=\"blob-num js-line-number\" data-line-number=\"986\"></td>\n        <td id=\"LC986\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>REDIRECT<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">REDIRECT</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L987\" class=\"blob-num js-line-number\" data-line-number=\"987\"></td>\n        <td id=\"LC987\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">statusCode</span> <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">300</span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L988\" class=\"blob-num js-line-number\" data-line-number=\"988\"></td>\n        <td id=\"LC988\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">statusCode</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">400</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>location<span class=\"pl-pds\">&#39;</span></span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L989\" class=\"blob-num js-line-number\" data-line-number=\"989\"></td>\n        <td id=\"LC989\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">endpoint</span> <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L990\" class=\"blob-num js-line-number\" data-line-number=\"990\"></td>\n        <td id=\"LC990\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.Endpoint</span>(<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>location<span class=\"pl-pds\">&#39;</span></span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L991\" class=\"blob-num js-line-number\" data-line-number=\"991\"></td>\n        <td id=\"LC991\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Host<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">endpoint</span>.<span class=\"pl-c1\">host</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L992\" class=\"blob-num js-line-number\" data-line-number=\"992\"></td>\n        <td id=\"LC992\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">redirect</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L993\" class=\"blob-num js-line-number\" data-line-number=\"993\"></td>\n        <td id=\"LC993\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryable</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L994\" class=\"blob-num js-line-number\" data-line-number=\"994\"></td>\n        <td id=\"LC994\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L995\" class=\"blob-num js-line-number\" data-line-number=\"995\"></td>\n        <td id=\"LC995\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L996\" class=\"blob-num js-line-number\" data-line-number=\"996\"></td>\n        <td id=\"LC996\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L997\" class=\"blob-num js-line-number\" data-line-number=\"997\"></td>\n        <td id=\"LC997\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RETRY_CHECK<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">RETRY_CHECK</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L998\" class=\"blob-num js-line-number\" data-line-number=\"998\"></td>\n        <td id=\"LC998\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L999\" class=\"blob-num js-line-number\" data-line-number=\"999\"></td>\n        <td id=\"LC999\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">redirect</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">redirectCount</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">maxRedirects</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1000\" class=\"blob-num js-line-number\" data-line-number=\"1000\"></td>\n        <td id=\"LC1000\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryDelay</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1001\" class=\"blob-num js-line-number\" data-line-number=\"1001\"></td>\n        <td id=\"LC1001\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">retryCount</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">maxRetries</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1002\" class=\"blob-num js-line-number\" data-line-number=\"1002\"></td>\n        <td id=\"LC1002\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryDelay</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">retryDelays</span>(<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">retryCount</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1003\" class=\"blob-num js-line-number\" data-line-number=\"1003\"></td>\n        <td id=\"LC1003\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L1004\" class=\"blob-num js-line-number\" data-line-number=\"1004\"></td>\n        <td id=\"LC1004\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1005\" class=\"blob-num js-line-number\" data-line-number=\"1005\"></td>\n        <td id=\"LC1005\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1006\" class=\"blob-num js-line-number\" data-line-number=\"1006\"></td>\n        <td id=\"LC1006\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1007\" class=\"blob-num js-line-number\" data-line-number=\"1007\"></td>\n        <td id=\"LC1007\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">addAsync</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RESET_RETRY_STATE<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterRetry<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">RESET_RETRY_STATE</span>(<span class=\"pl-smi\">resp</span>, <span class=\"pl-smi\">done</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1008\" class=\"blob-num js-line-number\" data-line-number=\"1008\"></td>\n        <td id=\"LC1008\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> delay, willRetry <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1009\" class=\"blob-num js-line-number\" data-line-number=\"1009\"></td>\n        <td id=\"LC1009\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1010\" class=\"blob-num js-line-number\" data-line-number=\"1010\"></td>\n        <td id=\"LC1010\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1011\" class=\"blob-num js-line-number\" data-line-number=\"1011\"></td>\n        <td id=\"LC1011\" class=\"blob-code blob-code-inner js-file-line\">        delay <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryDelay</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1012\" class=\"blob-num js-line-number\" data-line-number=\"1012\"></td>\n        <td id=\"LC1012\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryable</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">retryCount</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">maxRetries</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1013\" class=\"blob-num js-line-number\" data-line-number=\"1013\"></td>\n        <td id=\"LC1013\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">retryCount</span><span class=\"pl-k\">++</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1014\" class=\"blob-num js-line-number\" data-line-number=\"1014\"></td>\n        <td id=\"LC1014\" class=\"blob-code blob-code-inner js-file-line\">          willRetry <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1015\" class=\"blob-num js-line-number\" data-line-number=\"1015\"></td>\n        <td id=\"LC1015\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">redirect</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">redirectCount</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">maxRedirects</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1016\" class=\"blob-num js-line-number\" data-line-number=\"1016\"></td>\n        <td id=\"LC1016\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">redirectCount</span><span class=\"pl-k\">++</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1017\" class=\"blob-num js-line-number\" data-line-number=\"1017\"></td>\n        <td id=\"LC1017\" class=\"blob-code blob-code-inner js-file-line\">          willRetry <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1018\" class=\"blob-num js-line-number\" data-line-number=\"1018\"></td>\n        <td id=\"LC1018\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L1019\" class=\"blob-num js-line-number\" data-line-number=\"1019\"></td>\n        <td id=\"LC1019\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1020\" class=\"blob-num js-line-number\" data-line-number=\"1020\"></td>\n        <td id=\"LC1020\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1021\" class=\"blob-num js-line-number\" data-line-number=\"1021\"></td>\n        <td id=\"LC1021\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (willRetry) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1022\" class=\"blob-num js-line-number\" data-line-number=\"1022\"></td>\n        <td id=\"LC1022\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1023\" class=\"blob-num js-line-number\" data-line-number=\"1023\"></td>\n        <td id=\"LC1023\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-c1\">setTimeout</span>(done, delay);</td>\n      </tr>\n      <tr>\n        <td id=\"L1024\" class=\"blob-num js-line-number\" data-line-number=\"1024\"></td>\n        <td id=\"LC1024\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1025\" class=\"blob-num js-line-number\" data-line-number=\"1025\"></td>\n        <td id=\"LC1025\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">done</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L1026\" class=\"blob-num js-line-number\" data-line-number=\"1026\"></td>\n        <td id=\"LC1026\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1027\" class=\"blob-num js-line-number\" data-line-number=\"1027\"></td>\n        <td id=\"LC1027\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1028\" class=\"blob-num js-line-number\" data-line-number=\"1028\"></td>\n        <td id=\"LC1028\" class=\"blob-code blob-code-inner js-file-line\">  }),</td>\n      </tr>\n      <tr>\n        <td id=\"L1029\" class=\"blob-num js-line-number\" data-line-number=\"1029\"></td>\n        <td id=\"LC1029\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1030\" class=\"blob-num js-line-number\" data-line-number=\"1030\"></td>\n        <td id=\"LC1030\" class=\"blob-code blob-code-inner js-file-line\">  CorePost<span class=\"pl-k\">:</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">SequentialExecutor</span>().<span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">add</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1031\" class=\"blob-num js-line-number\" data-line-number=\"1031\"></td>\n        <td id=\"LC1031\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_REQUEST_ID<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">extractRequestId</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1032\" class=\"blob-num js-line-number\" data-line-number=\"1032\"></td>\n        <td id=\"LC1032\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_REQUEST_ID<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">extractRequestId</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1033\" class=\"blob-num js-line-number\" data-line-number=\"1033\"></td>\n        <td id=\"LC1033\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1034\" class=\"blob-num js-line-number\" data-line-number=\"1034\"></td>\n        <td id=\"LC1034\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ENOTFOUND_ERROR<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">ENOTFOUND_ERROR</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1035\" class=\"blob-num js-line-number\" data-line-number=\"1035\"></td>\n        <td id=\"LC1035\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">err</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>NetworkingError<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">errno</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ENOTFOUND<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1036\" class=\"blob-num js-line-number\" data-line-number=\"1036\"></td>\n        <td id=\"LC1036\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> message <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Inaccessible host: `<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1037\" class=\"blob-num js-line-number\" data-line-number=\"1037\"></td>\n        <td id=\"LC1037\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\&#39;</span>. This service may not be available in the `<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">region</span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1038\" class=\"blob-num js-line-number\" data-line-number=\"1038\"></td>\n        <td id=\"LC1038\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\&#39;</span> region.<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1039\" class=\"blob-num js-line-number\" data-line-number=\"1039\"></td>\n        <td id=\"LC1039\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(message), {</td>\n      </tr>\n      <tr>\n        <td id=\"L1040\" class=\"blob-num js-line-number\" data-line-number=\"1040\"></td>\n        <td id=\"LC1040\" class=\"blob-code blob-code-inner js-file-line\">          code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>UnknownEndpoint<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1041\" class=\"blob-num js-line-number\" data-line-number=\"1041\"></td>\n        <td id=\"LC1041\" class=\"blob-code blob-code-inner js-file-line\">          region<span class=\"pl-k\">:</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">region</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1042\" class=\"blob-num js-line-number\" data-line-number=\"1042\"></td>\n        <td id=\"LC1042\" class=\"blob-code blob-code-inner js-file-line\">          hostname<span class=\"pl-k\">:</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-c1\">hostname</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1043\" class=\"blob-num js-line-number\" data-line-number=\"1043\"></td>\n        <td id=\"LC1043\" class=\"blob-code blob-code-inner js-file-line\">          retryable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1044\" class=\"blob-num js-line-number\" data-line-number=\"1044\"></td>\n        <td id=\"LC1044\" class=\"blob-code blob-code-inner js-file-line\">          originalError<span class=\"pl-k\">:</span> err</td>\n      </tr>\n      <tr>\n        <td id=\"L1045\" class=\"blob-num js-line-number\" data-line-number=\"1045\"></td>\n        <td id=\"LC1045\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L1046\" class=\"blob-num js-line-number\" data-line-number=\"1046\"></td>\n        <td id=\"LC1046\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1047\" class=\"blob-num js-line-number\" data-line-number=\"1047\"></td>\n        <td id=\"LC1047\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1048\" class=\"blob-num js-line-number\" data-line-number=\"1048\"></td>\n        <td id=\"LC1048\" class=\"blob-code blob-code-inner js-file-line\">  }),</td>\n      </tr>\n      <tr>\n        <td id=\"L1049\" class=\"blob-num js-line-number\" data-line-number=\"1049\"></td>\n        <td id=\"LC1049\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1050\" class=\"blob-num js-line-number\" data-line-number=\"1050\"></td>\n        <td id=\"LC1050\" class=\"blob-code blob-code-inner js-file-line\">  Logger<span class=\"pl-k\">:</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">SequentialExecutor</span>().<span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">add</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1051\" class=\"blob-num js-line-number\" data-line-number=\"1051\"></td>\n        <td id=\"LC1051\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>LOG_REQUEST<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>complete<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">LOG_REQUEST</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1052\" class=\"blob-num js-line-number\" data-line-number=\"1052\"></td>\n        <td id=\"LC1052\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> req <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1053\" class=\"blob-num js-line-number\" data-line-number=\"1053\"></td>\n        <td id=\"LC1053\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> logger <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">logger</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1054\" class=\"blob-num js-line-number\" data-line-number=\"1054\"></td>\n        <td id=\"LC1054\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>logger) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1055\" class=\"blob-num js-line-number\" data-line-number=\"1055\"></td>\n        <td id=\"LC1055\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1056\" class=\"blob-num js-line-number\" data-line-number=\"1056\"></td>\n        <td id=\"LC1056\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">function</span> <span class=\"pl-en\">buildMessage</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1057\" class=\"blob-num js-line-number\" data-line-number=\"1057\"></td>\n        <td id=\"LC1057\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> time <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-c1\">getDate</span>().<span class=\"pl-c1\">getTime</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L1058\" class=\"blob-num js-line-number\" data-line-number=\"1058\"></td>\n        <td id=\"LC1058\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> delta <span class=\"pl-k\">=</span> (time <span class=\"pl-k\">-</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">startTime</span>.<span class=\"pl-c1\">getTime</span>()) <span class=\"pl-k\">/</span> <span class=\"pl-c1\">1000</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1059\" class=\"blob-num js-line-number\" data-line-number=\"1059\"></td>\n        <td id=\"LC1059\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> ansi <span class=\"pl-k\">=</span> <span class=\"pl-smi\">logger</span>.<span class=\"pl-smi\">isTTY</span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">true</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1060\" class=\"blob-num js-line-number\" data-line-number=\"1060\"></td>\n        <td id=\"LC1060\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> status <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">statusCode</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1061\" class=\"blob-num js-line-number\" data-line-number=\"1061\"></td>\n        <td id=\"LC1061\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> params <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>util<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-en\">inspect</span>(<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">params</span>, <span class=\"pl-c1\">true</span>, <span class=\"pl-c1\">null</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1062\" class=\"blob-num js-line-number\" data-line-number=\"1062\"></td>\n        <td id=\"LC1062\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1063\" class=\"blob-num js-line-number\" data-line-number=\"1063\"></td>\n        <td id=\"LC1063\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> message <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1064\" class=\"blob-num js-line-number\" data-line-number=\"1064\"></td>\n        <td id=\"LC1064\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (ansi) message <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\x</span>1B[33m<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1065\" class=\"blob-num js-line-number\" data-line-number=\"1065\"></td>\n        <td id=\"LC1065\" class=\"blob-code blob-code-inner js-file-line\">        message <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[AWS <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">serviceIdentifier</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> status;</td>\n      </tr>\n      <tr>\n        <td id=\"L1066\" class=\"blob-num js-line-number\" data-line-number=\"1066\"></td>\n        <td id=\"LC1066\" class=\"blob-code blob-code-inner js-file-line\">        message <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">delta</span>.<span class=\"pl-c1\">toString</span>() <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>s <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">retryCount</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> retries]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1067\" class=\"blob-num js-line-number\" data-line-number=\"1067\"></td>\n        <td id=\"LC1067\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (ansi) message <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\x</span>1B[0;1m<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1068\" class=\"blob-num js-line-number\" data-line-number=\"1068\"></td>\n        <td id=\"LC1068\" class=\"blob-code blob-code-inner js-file-line\">        message <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">string</span>.<span class=\"pl-en\">lowerFirst</span>(<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1069\" class=\"blob-num js-line-number\" data-line-number=\"1069\"></td>\n        <td id=\"LC1069\" class=\"blob-code blob-code-inner js-file-line\">        message <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>(<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> params <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>)<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1070\" class=\"blob-num js-line-number\" data-line-number=\"1070\"></td>\n        <td id=\"LC1070\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (ansi) message <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\x</span>1B[0m<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1071\" class=\"blob-num js-line-number\" data-line-number=\"1071\"></td>\n        <td id=\"LC1071\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> message;</td>\n      </tr>\n      <tr>\n        <td id=\"L1072\" class=\"blob-num js-line-number\" data-line-number=\"1072\"></td>\n        <td id=\"LC1072\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1073\" class=\"blob-num js-line-number\" data-line-number=\"1073\"></td>\n        <td id=\"LC1073\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1074\" class=\"blob-num js-line-number\" data-line-number=\"1074\"></td>\n        <td id=\"LC1074\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> line <span class=\"pl-k\">=</span> <span class=\"pl-en\">buildMessage</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L1075\" class=\"blob-num js-line-number\" data-line-number=\"1075\"></td>\n        <td id=\"LC1075\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">logger</span>.<span class=\"pl-smi\">log</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1076\" class=\"blob-num js-line-number\" data-line-number=\"1076\"></td>\n        <td id=\"LC1076\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">logger</span>.<span class=\"pl-en\">log</span>(line);</td>\n      </tr>\n      <tr>\n        <td id=\"L1077\" class=\"blob-num js-line-number\" data-line-number=\"1077\"></td>\n        <td id=\"LC1077\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">logger</span>.<span class=\"pl-smi\">write</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1078\" class=\"blob-num js-line-number\" data-line-number=\"1078\"></td>\n        <td id=\"LC1078\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">logger</span>.<span class=\"pl-c1\">write</span>(line <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1079\" class=\"blob-num js-line-number\" data-line-number=\"1079\"></td>\n        <td id=\"LC1079\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1080\" class=\"blob-num js-line-number\" data-line-number=\"1080\"></td>\n        <td id=\"LC1080\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1081\" class=\"blob-num js-line-number\" data-line-number=\"1081\"></td>\n        <td id=\"LC1081\" class=\"blob-code blob-code-inner js-file-line\">  }),</td>\n      </tr>\n      <tr>\n        <td id=\"L1082\" class=\"blob-num js-line-number\" data-line-number=\"1082\"></td>\n        <td id=\"LC1082\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1083\" class=\"blob-num js-line-number\" data-line-number=\"1083\"></td>\n        <td id=\"LC1083\" class=\"blob-code blob-code-inner js-file-line\">  Json<span class=\"pl-k\">:</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">SequentialExecutor</span>().<span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">add</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1084\" class=\"blob-num js-line-number\" data-line-number=\"1084\"></td>\n        <td id=\"LC1084\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> svc <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./protocol/json<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1085\" class=\"blob-num js-line-number\" data-line-number=\"1085\"></td>\n        <td id=\"LC1085\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>BUILD<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">buildRequest</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1086\" class=\"blob-num js-line-number\" data-line-number=\"1086\"></td>\n        <td id=\"LC1086\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_DATA<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">extractData</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1087\" class=\"blob-num js-line-number\" data-line-number=\"1087\"></td>\n        <td id=\"LC1087\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_ERROR<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">extractError</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1088\" class=\"blob-num js-line-number\" data-line-number=\"1088\"></td>\n        <td id=\"LC1088\" class=\"blob-code blob-code-inner js-file-line\">  }),</td>\n      </tr>\n      <tr>\n        <td id=\"L1089\" class=\"blob-num js-line-number\" data-line-number=\"1089\"></td>\n        <td id=\"LC1089\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1090\" class=\"blob-num js-line-number\" data-line-number=\"1090\"></td>\n        <td id=\"LC1090\" class=\"blob-code blob-code-inner js-file-line\">  Rest<span class=\"pl-k\">:</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">SequentialExecutor</span>().<span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">add</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1091\" class=\"blob-num js-line-number\" data-line-number=\"1091\"></td>\n        <td id=\"LC1091\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> svc <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./protocol/rest<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1092\" class=\"blob-num js-line-number\" data-line-number=\"1092\"></td>\n        <td id=\"LC1092\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>BUILD<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">buildRequest</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1093\" class=\"blob-num js-line-number\" data-line-number=\"1093\"></td>\n        <td id=\"LC1093\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_DATA<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">extractData</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1094\" class=\"blob-num js-line-number\" data-line-number=\"1094\"></td>\n        <td id=\"LC1094\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_ERROR<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">extractError</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1095\" class=\"blob-num js-line-number\" data-line-number=\"1095\"></td>\n        <td id=\"LC1095\" class=\"blob-code blob-code-inner js-file-line\">  }),</td>\n      </tr>\n      <tr>\n        <td id=\"L1096\" class=\"blob-num js-line-number\" data-line-number=\"1096\"></td>\n        <td id=\"LC1096\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1097\" class=\"blob-num js-line-number\" data-line-number=\"1097\"></td>\n        <td id=\"LC1097\" class=\"blob-code blob-code-inner js-file-line\">  RestJson<span class=\"pl-k\">:</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">SequentialExecutor</span>().<span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">add</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1098\" class=\"blob-num js-line-number\" data-line-number=\"1098\"></td>\n        <td id=\"LC1098\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> svc <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./protocol/rest_json<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1099\" class=\"blob-num js-line-number\" data-line-number=\"1099\"></td>\n        <td id=\"LC1099\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>BUILD<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">buildRequest</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1100\" class=\"blob-num js-line-number\" data-line-number=\"1100\"></td>\n        <td id=\"LC1100\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_DATA<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">extractData</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1101\" class=\"blob-num js-line-number\" data-line-number=\"1101\"></td>\n        <td id=\"LC1101\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_ERROR<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">extractError</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1102\" class=\"blob-num js-line-number\" data-line-number=\"1102\"></td>\n        <td id=\"LC1102\" class=\"blob-code blob-code-inner js-file-line\">  }),</td>\n      </tr>\n      <tr>\n        <td id=\"L1103\" class=\"blob-num js-line-number\" data-line-number=\"1103\"></td>\n        <td id=\"LC1103\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1104\" class=\"blob-num js-line-number\" data-line-number=\"1104\"></td>\n        <td id=\"LC1104\" class=\"blob-code blob-code-inner js-file-line\">  RestXml<span class=\"pl-k\">:</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">SequentialExecutor</span>().<span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">add</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1105\" class=\"blob-num js-line-number\" data-line-number=\"1105\"></td>\n        <td id=\"LC1105\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> svc <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./protocol/rest_xml<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1106\" class=\"blob-num js-line-number\" data-line-number=\"1106\"></td>\n        <td id=\"LC1106\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>BUILD<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">buildRequest</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1107\" class=\"blob-num js-line-number\" data-line-number=\"1107\"></td>\n        <td id=\"LC1107\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_DATA<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">extractData</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1108\" class=\"blob-num js-line-number\" data-line-number=\"1108\"></td>\n        <td id=\"LC1108\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_ERROR<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">extractError</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1109\" class=\"blob-num js-line-number\" data-line-number=\"1109\"></td>\n        <td id=\"LC1109\" class=\"blob-code blob-code-inner js-file-line\">  }),</td>\n      </tr>\n      <tr>\n        <td id=\"L1110\" class=\"blob-num js-line-number\" data-line-number=\"1110\"></td>\n        <td id=\"LC1110\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1111\" class=\"blob-num js-line-number\" data-line-number=\"1111\"></td>\n        <td id=\"LC1111\" class=\"blob-code blob-code-inner js-file-line\">  Query<span class=\"pl-k\">:</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">SequentialExecutor</span>().<span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">add</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1112\" class=\"blob-num js-line-number\" data-line-number=\"1112\"></td>\n        <td id=\"LC1112\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> svc <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./protocol/query<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1113\" class=\"blob-num js-line-number\" data-line-number=\"1113\"></td>\n        <td id=\"LC1113\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>BUILD<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">buildRequest</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1114\" class=\"blob-num js-line-number\" data-line-number=\"1114\"></td>\n        <td id=\"LC1114\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_DATA<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">extractData</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1115\" class=\"blob-num js-line-number\" data-line-number=\"1115\"></td>\n        <td id=\"LC1115\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EXTRACT_ERROR<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">extractError</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1116\" class=\"blob-num js-line-number\" data-line-number=\"1116\"></td>\n        <td id=\"LC1116\" class=\"blob-code blob-code-inner js-file-line\">  })</td>\n      </tr>\n      <tr>\n        <td id=\"L1117\" class=\"blob-num js-line-number\" data-line-number=\"1117\"></td>\n        <td id=\"LC1117\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L1118\" class=\"blob-num js-line-number\" data-line-number=\"1118\"></td>\n        <td id=\"LC1118\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1119\" class=\"blob-num js-line-number\" data-line-number=\"1119\"></td>\n        <td id=\"LC1119\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./protocol/json<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">22</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./protocol/query<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">23</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./protocol/rest<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">24</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./protocol/rest_json<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">25</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./protocol/rest_xml<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">26</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./sequential_executor<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">33</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">65</span>}],<span class=\"pl-c1\">11</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L1120\" class=\"blob-num js-line-number\" data-line-number=\"1120\"></td>\n        <td id=\"LC1120\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1121\" class=\"blob-num js-line-number\" data-line-number=\"1121\"></td>\n        <td id=\"LC1121\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1122\" class=\"blob-num js-line-number\" data-line-number=\"1122\"></td>\n        <td id=\"LC1122\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1123\" class=\"blob-num js-line-number\" data-line-number=\"1123\"></td>\n        <td id=\"LC1123\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1124\" class=\"blob-num js-line-number\" data-line-number=\"1124\"></td>\n        <td id=\"LC1124\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Endpoint</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L1125\" class=\"blob-num js-line-number\" data-line-number=\"1125\"></td>\n        <td id=\"LC1125\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1126\" class=\"blob-num js-line-number\" data-line-number=\"1126\"></td>\n        <td id=\"LC1126\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1127\" class=\"blob-num js-line-number\" data-line-number=\"1127\"></td>\n        <td id=\"LC1127\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">Endpoint</span>(<span class=\"pl-smi\">endpoint</span>, <span class=\"pl-smi\">config</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1128\" class=\"blob-num js-line-number\" data-line-number=\"1128\"></td>\n        <td id=\"LC1128\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">hideProperties</span>(<span class=\"pl-v\">this</span>, [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>slashes<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>auth<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>hash<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>search<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>query<span class=\"pl-pds\">&#39;</span></span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L1129\" class=\"blob-num js-line-number\" data-line-number=\"1129\"></td>\n        <td id=\"LC1129\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1130\" class=\"blob-num js-line-number\" data-line-number=\"1130\"></td>\n        <td id=\"LC1130\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> endpoint <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> endpoint <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1131\" class=\"blob-num js-line-number\" data-line-number=\"1131\"></td>\n        <td id=\"LC1131\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Invalid endpoint: <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> endpoint);</td>\n      </tr>\n      <tr>\n        <td id=\"L1132\" class=\"blob-num js-line-number\" data-line-number=\"1132\"></td>\n        <td id=\"LC1132\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> endpoint <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1133\" class=\"blob-num js-line-number\" data-line-number=\"1133\"></td>\n        <td id=\"LC1133\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">copy</span>(endpoint);</td>\n      </tr>\n      <tr>\n        <td id=\"L1134\" class=\"blob-num js-line-number\" data-line-number=\"1134\"></td>\n        <td id=\"LC1134\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1135\" class=\"blob-num js-line-number\" data-line-number=\"1135\"></td>\n        <td id=\"LC1135\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1136\" class=\"blob-num js-line-number\" data-line-number=\"1136\"></td>\n        <td id=\"LC1136\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">endpoint</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span>http<span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1137\" class=\"blob-num js-line-number\" data-line-number=\"1137\"></td>\n        <td id=\"LC1137\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> useSSL <span class=\"pl-k\">=</span> config <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">sslEnabled</span> <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">?</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1138\" class=\"blob-num js-line-number\" data-line-number=\"1138\"></td>\n        <td id=\"LC1138\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">sslEnabled</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">sslEnabled</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1139\" class=\"blob-num js-line-number\" data-line-number=\"1139\"></td>\n        <td id=\"LC1139\" class=\"blob-code blob-code-inner js-file-line\">      endpoint <span class=\"pl-k\">=</span> (useSSL <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>https<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>http<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>://<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> endpoint;</td>\n      </tr>\n      <tr>\n        <td id=\"L1140\" class=\"blob-num js-line-number\" data-line-number=\"1140\"></td>\n        <td id=\"LC1140\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1141\" class=\"blob-num js-line-number\" data-line-number=\"1141\"></td>\n        <td id=\"LC1141\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1142\" class=\"blob-num js-line-number\" data-line-number=\"1142\"></td>\n        <td id=\"LC1142\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">update</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">urlParse</span>(endpoint));</td>\n      </tr>\n      <tr>\n        <td id=\"L1143\" class=\"blob-num js-line-number\" data-line-number=\"1143\"></td>\n        <td id=\"LC1143\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1144\" class=\"blob-num js-line-number\" data-line-number=\"1144\"></td>\n        <td id=\"LC1144\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">port</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1145\" class=\"blob-num js-line-number\" data-line-number=\"1145\"></td>\n        <td id=\"LC1145\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">port</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">parseInt</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">port</span>, <span class=\"pl-c1\">10</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1146\" class=\"blob-num js-line-number\" data-line-number=\"1146\"></td>\n        <td id=\"LC1146\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1147\" class=\"blob-num js-line-number\" data-line-number=\"1147\"></td>\n        <td id=\"LC1147\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">port</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>https:<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">443</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">80</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1148\" class=\"blob-num js-line-number\" data-line-number=\"1148\"></td>\n        <td id=\"LC1148\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1149\" class=\"blob-num js-line-number\" data-line-number=\"1149\"></td>\n        <td id=\"LC1149\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1150\" class=\"blob-num js-line-number\" data-line-number=\"1150\"></td>\n        <td id=\"LC1150\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1151\" class=\"blob-num js-line-number\" data-line-number=\"1151\"></td>\n        <td id=\"LC1151\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L1152\" class=\"blob-num js-line-number\" data-line-number=\"1152\"></td>\n        <td id=\"LC1152\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1153\" class=\"blob-num js-line-number\" data-line-number=\"1153\"></td>\n        <td id=\"LC1153\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1154\" class=\"blob-num js-line-number\" data-line-number=\"1154\"></td>\n        <td id=\"LC1154\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">HttpRequest</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L1155\" class=\"blob-num js-line-number\" data-line-number=\"1155\"></td>\n        <td id=\"LC1155\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1156\" class=\"blob-num js-line-number\" data-line-number=\"1156\"></td>\n        <td id=\"LC1156\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1157\" class=\"blob-num js-line-number\" data-line-number=\"1157\"></td>\n        <td id=\"LC1157\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">HttpRequest</span>(<span class=\"pl-smi\">endpoint</span>, <span class=\"pl-smi\">region</span>, <span class=\"pl-smi\">customUserAgent</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1158\" class=\"blob-num js-line-number\" data-line-number=\"1158\"></td>\n        <td id=\"LC1158\" class=\"blob-code blob-code-inner js-file-line\">    endpoint <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.Endpoint</span>(endpoint);</td>\n      </tr>\n      <tr>\n        <td id=\"L1159\" class=\"blob-num js-line-number\" data-line-number=\"1159\"></td>\n        <td id=\"LC1159\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">method</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>POST<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1160\" class=\"blob-num js-line-number\" data-line-number=\"1160\"></td>\n        <td id=\"LC1160\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">endpoint</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1161\" class=\"blob-num js-line-number\" data-line-number=\"1161\"></td>\n        <td id=\"LC1161\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">headers</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1162\" class=\"blob-num js-line-number\" data-line-number=\"1162\"></td>\n        <td id=\"LC1162\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1163\" class=\"blob-num js-line-number\" data-line-number=\"1163\"></td>\n        <td id=\"LC1163\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">endpoint</span> <span class=\"pl-k\">=</span> endpoint;</td>\n      </tr>\n      <tr>\n        <td id=\"L1164\" class=\"blob-num js-line-number\" data-line-number=\"1164\"></td>\n        <td id=\"LC1164\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">region</span> <span class=\"pl-k\">=</span> region;</td>\n      </tr>\n      <tr>\n        <td id=\"L1165\" class=\"blob-num js-line-number\" data-line-number=\"1165\"></td>\n        <td id=\"LC1165\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">setUserAgent</span>(customUserAgent);</td>\n      </tr>\n      <tr>\n        <td id=\"L1166\" class=\"blob-num js-line-number\" data-line-number=\"1166\"></td>\n        <td id=\"LC1166\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L1167\" class=\"blob-num js-line-number\" data-line-number=\"1167\"></td>\n        <td id=\"LC1167\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1168\" class=\"blob-num js-line-number\" data-line-number=\"1168\"></td>\n        <td id=\"LC1168\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1169\" class=\"blob-num js-line-number\" data-line-number=\"1169\"></td>\n        <td id=\"LC1169\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">setUserAgent</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">setUserAgent</span>(<span class=\"pl-smi\">customUserAgent</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1170\" class=\"blob-num js-line-number\" data-line-number=\"1170\"></td>\n        <td id=\"LC1170\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> prefix <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isBrowser</span>() <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1171\" class=\"blob-num js-line-number\" data-line-number=\"1171\"></td>\n        <td id=\"LC1171\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> customSuffix <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1172\" class=\"blob-num js-line-number\" data-line-number=\"1172\"></td>\n        <td id=\"LC1172\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> customUserAgent <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> customUserAgent) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1173\" class=\"blob-num js-line-number\" data-line-number=\"1173\"></td>\n        <td id=\"LC1173\" class=\"blob-code blob-code-inner js-file-line\">      customSuffix <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> customUserAgent;</td>\n      </tr>\n      <tr>\n        <td id=\"L1174\" class=\"blob-num js-line-number\" data-line-number=\"1174\"></td>\n        <td id=\"LC1174\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1175\" class=\"blob-num js-line-number\" data-line-number=\"1175\"></td>\n        <td id=\"LC1175\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">headers</span>[prefix <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>User-Agent<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">userAgent</span>() <span class=\"pl-k\">+</span> customSuffix;</td>\n      </tr>\n      <tr>\n        <td id=\"L1176\" class=\"blob-num js-line-number\" data-line-number=\"1176\"></td>\n        <td id=\"LC1176\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L1177\" class=\"blob-num js-line-number\" data-line-number=\"1177\"></td>\n        <td id=\"LC1177\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1178\" class=\"blob-num js-line-number\" data-line-number=\"1178\"></td>\n        <td id=\"LC1178\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1179\" class=\"blob-num js-line-number\" data-line-number=\"1179\"></td>\n        <td id=\"LC1179\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">pathname</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">pathname</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1180\" class=\"blob-num js-line-number\" data-line-number=\"1180\"></td>\n        <td id=\"LC1180\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">path</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">1</span>)[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L1181\" class=\"blob-num js-line-number\" data-line-number=\"1181\"></td>\n        <td id=\"LC1181\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L1182\" class=\"blob-num js-line-number\" data-line-number=\"1182\"></td>\n        <td id=\"LC1182\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1183\" class=\"blob-num js-line-number\" data-line-number=\"1183\"></td>\n        <td id=\"LC1183\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1184\" class=\"blob-num js-line-number\" data-line-number=\"1184\"></td>\n        <td id=\"LC1184\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">search</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">search</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1185\" class=\"blob-num js-line-number\" data-line-number=\"1185\"></td>\n        <td id=\"LC1185\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> query <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">path</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">2</span>)[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L1186\" class=\"blob-num js-line-number\" data-line-number=\"1186\"></td>\n        <td id=\"LC1186\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (query) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1187\" class=\"blob-num js-line-number\" data-line-number=\"1187\"></td>\n        <td id=\"LC1187\" class=\"blob-code blob-code-inner js-file-line\">      query <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">queryStringParse</span>(query);</td>\n      </tr>\n      <tr>\n        <td id=\"L1188\" class=\"blob-num js-line-number\" data-line-number=\"1188\"></td>\n        <td id=\"LC1188\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">queryParamsToString</span>(query);</td>\n      </tr>\n      <tr>\n        <td id=\"L1189\" class=\"blob-num js-line-number\" data-line-number=\"1189\"></td>\n        <td id=\"LC1189\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1190\" class=\"blob-num js-line-number\" data-line-number=\"1190\"></td>\n        <td id=\"LC1190\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1191\" class=\"blob-num js-line-number\" data-line-number=\"1191\"></td>\n        <td id=\"LC1191\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1192\" class=\"blob-num js-line-number\" data-line-number=\"1192\"></td>\n        <td id=\"LC1192\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1193\" class=\"blob-num js-line-number\" data-line-number=\"1193\"></td>\n        <td id=\"LC1193\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L1194\" class=\"blob-num js-line-number\" data-line-number=\"1194\"></td>\n        <td id=\"LC1194\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1195\" class=\"blob-num js-line-number\" data-line-number=\"1195\"></td>\n        <td id=\"LC1195\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1196\" class=\"blob-num js-line-number\" data-line-number=\"1196\"></td>\n        <td id=\"LC1196\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">HttpResponse</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L1197\" class=\"blob-num js-line-number\" data-line-number=\"1197\"></td>\n        <td id=\"LC1197\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1198\" class=\"blob-num js-line-number\" data-line-number=\"1198\"></td>\n        <td id=\"LC1198\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1199\" class=\"blob-num js-line-number\" data-line-number=\"1199\"></td>\n        <td id=\"LC1199\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">HttpResponse</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1200\" class=\"blob-num js-line-number\" data-line-number=\"1200\"></td>\n        <td id=\"LC1200\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">statusCode</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1201\" class=\"blob-num js-line-number\" data-line-number=\"1201\"></td>\n        <td id=\"LC1201\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">headers</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1202\" class=\"blob-num js-line-number\" data-line-number=\"1202\"></td>\n        <td id=\"LC1202\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1203\" class=\"blob-num js-line-number\" data-line-number=\"1203\"></td>\n        <td id=\"LC1203\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">streaming</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1204\" class=\"blob-num js-line-number\" data-line-number=\"1204\"></td>\n        <td id=\"LC1204\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stream</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1205\" class=\"blob-num js-line-number\" data-line-number=\"1205\"></td>\n        <td id=\"LC1205\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L1206\" class=\"blob-num js-line-number\" data-line-number=\"1206\"></td>\n        <td id=\"LC1206\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1207\" class=\"blob-num js-line-number\" data-line-number=\"1207\"></td>\n        <td id=\"LC1207\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1208\" class=\"blob-num js-line-number\" data-line-number=\"1208\"></td>\n        <td id=\"LC1208\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">createUnbufferedStream</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">createUnbufferedStream</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1209\" class=\"blob-num js-line-number\" data-line-number=\"1209\"></td>\n        <td id=\"LC1209\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">streaming</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1210\" class=\"blob-num js-line-number\" data-line-number=\"1210\"></td>\n        <td id=\"LC1210\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stream</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1211\" class=\"blob-num js-line-number\" data-line-number=\"1211\"></td>\n        <td id=\"LC1211\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1212\" class=\"blob-num js-line-number\" data-line-number=\"1212\"></td>\n        <td id=\"LC1212\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L1213\" class=\"blob-num js-line-number\" data-line-number=\"1213\"></td>\n        <td id=\"LC1213\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1214\" class=\"blob-num js-line-number\" data-line-number=\"1214\"></td>\n        <td id=\"LC1214\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1215\" class=\"blob-num js-line-number\" data-line-number=\"1215\"></td>\n        <td id=\"LC1215\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">HttpClient</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>({});</td>\n      </tr>\n      <tr>\n        <td id=\"L1216\" class=\"blob-num js-line-number\" data-line-number=\"1216\"></td>\n        <td id=\"LC1216\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1217\" class=\"blob-num js-line-number\" data-line-number=\"1217\"></td>\n        <td id=\"LC1217\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1218\" class=\"blob-num js-line-number\" data-line-number=\"1218\"></td>\n        <td id=\"LC1218\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">HttpClient</span>.<span class=\"pl-en\">getInstance</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">getInstance</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1219\" class=\"blob-num js-line-number\" data-line-number=\"1219\"></td>\n        <td id=\"LC1219\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">singleton</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1220\" class=\"blob-num js-line-number\" data-line-number=\"1220\"></td>\n        <td id=\"LC1220\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">singleton</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">this</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L1221\" class=\"blob-num js-line-number\" data-line-number=\"1221\"></td>\n        <td id=\"LC1221\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1222\" class=\"blob-num js-line-number\" data-line-number=\"1222\"></td>\n        <td id=\"LC1222\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">singleton</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1223\" class=\"blob-num js-line-number\" data-line-number=\"1223\"></td>\n        <td id=\"LC1223\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L1224\" class=\"blob-num js-line-number\" data-line-number=\"1224\"></td>\n        <td id=\"LC1224\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1225\" class=\"blob-num js-line-number\" data-line-number=\"1225\"></td>\n        <td id=\"LC1225\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">12</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L1226\" class=\"blob-num js-line-number\" data-line-number=\"1226\"></td>\n        <td id=\"LC1226\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1227\" class=\"blob-num js-line-number\" data-line-number=\"1227\"></td>\n        <td id=\"LC1227\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> EventEmitter <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>events<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-smi\">EventEmitter</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1228\" class=\"blob-num js-line-number\" data-line-number=\"1228\"></td>\n        <td id=\"LC1228\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../http<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1229\" class=\"blob-num js-line-number\" data-line-number=\"1229\"></td>\n        <td id=\"LC1229\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1230\" class=\"blob-num js-line-number\" data-line-number=\"1230\"></td>\n        <td id=\"LC1230\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1231\" class=\"blob-num js-line-number\" data-line-number=\"1231\"></td>\n        <td id=\"LC1231\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">XHRClient</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L1232\" class=\"blob-num js-line-number\" data-line-number=\"1232\"></td>\n        <td id=\"LC1232\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">handleRequest</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">handleRequest</span>(<span class=\"pl-smi\">httpRequest</span>, <span class=\"pl-smi\">httpOptions</span>, <span class=\"pl-smi\">callback</span>, <span class=\"pl-smi\">errCallback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1233\" class=\"blob-num js-line-number\" data-line-number=\"1233\"></td>\n        <td id=\"LC1233\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1234\" class=\"blob-num js-line-number\" data-line-number=\"1234\"></td>\n        <td id=\"LC1234\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> endpoint <span class=\"pl-k\">=</span> <span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">endpoint</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1235\" class=\"blob-num js-line-number\" data-line-number=\"1235\"></td>\n        <td id=\"LC1235\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> emitter <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">EventEmitter</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L1236\" class=\"blob-num js-line-number\" data-line-number=\"1236\"></td>\n        <td id=\"LC1236\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> href <span class=\"pl-k\">=</span> <span class=\"pl-smi\">endpoint</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>//<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">endpoint</span>.<span class=\"pl-c1\">hostname</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1237\" class=\"blob-num js-line-number\" data-line-number=\"1237\"></td>\n        <td id=\"LC1237\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">endpoint</span>.<span class=\"pl-c1\">port</span> <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">80</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">endpoint</span>.<span class=\"pl-c1\">port</span> <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">443</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1238\" class=\"blob-num js-line-number\" data-line-number=\"1238\"></td>\n        <td id=\"LC1238\" class=\"blob-code blob-code-inner js-file-line\">      href <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">endpoint</span>.<span class=\"pl-c1\">port</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1239\" class=\"blob-num js-line-number\" data-line-number=\"1239\"></td>\n        <td id=\"LC1239\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1240\" class=\"blob-num js-line-number\" data-line-number=\"1240\"></td>\n        <td id=\"LC1240\" class=\"blob-code blob-code-inner js-file-line\">    href <span class=\"pl-k\">+=</span> <span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">path</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1241\" class=\"blob-num js-line-number\" data-line-number=\"1241\"></td>\n        <td id=\"LC1241\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1242\" class=\"blob-num js-line-number\" data-line-number=\"1242\"></td>\n        <td id=\"LC1242\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> xhr <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLHttpRequest</span>(), headersEmitted <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1243\" class=\"blob-num js-line-number\" data-line-number=\"1243\"></td>\n        <td id=\"LC1243\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">stream</span> <span class=\"pl-k\">=</span> xhr;</td>\n      </tr>\n      <tr>\n        <td id=\"L1244\" class=\"blob-num js-line-number\" data-line-number=\"1244\"></td>\n        <td id=\"LC1244\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1245\" class=\"blob-num js-line-number\" data-line-number=\"1245\"></td>\n        <td id=\"LC1245\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">xhr</span>.<span class=\"pl-en\">addEventListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>readystatechange<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1246\" class=\"blob-num js-line-number\" data-line-number=\"1246\"></td>\n        <td id=\"LC1246\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1247\" class=\"blob-num js-line-number\" data-line-number=\"1247\"></td>\n        <td id=\"LC1247\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">xhr</span>.<span class=\"pl-c1\">status</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">return</span>; <span class=\"pl-c\">// 0 code is invalid</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1248\" class=\"blob-num js-line-number\" data-line-number=\"1248\"></td>\n        <td id=\"LC1248\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">catch</span> (e) { <span class=\"pl-k\">return</span>; }</td>\n      </tr>\n      <tr>\n        <td id=\"L1249\" class=\"blob-num js-line-number\" data-line-number=\"1249\"></td>\n        <td id=\"LC1249\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1250\" class=\"blob-num js-line-number\" data-line-number=\"1250\"></td>\n        <td id=\"LC1250\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">readyState</span> <span class=\"pl-k\">&gt;=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">HEADERS_RECEIVED</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>headersEmitted) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1251\" class=\"blob-num js-line-number\" data-line-number=\"1251\"></td>\n        <td id=\"LC1251\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">try</span> { <span class=\"pl-smi\">xhr</span>.<span class=\"pl-smi\">responseType</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>arraybuffer<span class=\"pl-pds\">&#39;</span></span>; } <span class=\"pl-k\">catch</span> (e) {}</td>\n      </tr>\n      <tr>\n        <td id=\"L1252\" class=\"blob-num js-line-number\" data-line-number=\"1252\"></td>\n        <td id=\"LC1252\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">emitter</span>.<span class=\"pl-smi\">statusCode</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xhr</span>.<span class=\"pl-c1\">status</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1253\" class=\"blob-num js-line-number\" data-line-number=\"1253\"></td>\n        <td id=\"LC1253\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">emitter</span>.<span class=\"pl-c1\">headers</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">parseHeaders</span>(<span class=\"pl-smi\">xhr</span>.<span class=\"pl-c1\">getAllResponseHeaders</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L1254\" class=\"blob-num js-line-number\" data-line-number=\"1254\"></td>\n        <td id=\"LC1254\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">emitter</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>headers<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">emitter</span>.<span class=\"pl-smi\">statusCode</span>, <span class=\"pl-smi\">emitter</span>.<span class=\"pl-c1\">headers</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1255\" class=\"blob-num js-line-number\" data-line-number=\"1255\"></td>\n        <td id=\"LC1255\" class=\"blob-code blob-code-inner js-file-line\">        headersEmitted <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1256\" class=\"blob-num js-line-number\" data-line-number=\"1256\"></td>\n        <td id=\"LC1256\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1257\" class=\"blob-num js-line-number\" data-line-number=\"1257\"></td>\n        <td id=\"LC1257\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">readyState</span> <span class=\"pl-k\">===</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">DONE</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1258\" class=\"blob-num js-line-number\" data-line-number=\"1258\"></td>\n        <td id=\"LC1258\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">finishRequest</span>(xhr, emitter);</td>\n      </tr>\n      <tr>\n        <td id=\"L1259\" class=\"blob-num js-line-number\" data-line-number=\"1259\"></td>\n        <td id=\"LC1259\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1260\" class=\"blob-num js-line-number\" data-line-number=\"1260\"></td>\n        <td id=\"LC1260\" class=\"blob-code blob-code-inner js-file-line\">    }, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1261\" class=\"blob-num js-line-number\" data-line-number=\"1261\"></td>\n        <td id=\"LC1261\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">xhr</span>.<span class=\"pl-smi\">upload</span>.<span class=\"pl-en\">addEventListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>progress<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">evt</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1262\" class=\"blob-num js-line-number\" data-line-number=\"1262\"></td>\n        <td id=\"LC1262\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">emitter</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sendProgress<span class=\"pl-pds\">&#39;</span></span>, evt);</td>\n      </tr>\n      <tr>\n        <td id=\"L1263\" class=\"blob-num js-line-number\" data-line-number=\"1263\"></td>\n        <td id=\"LC1263\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1264\" class=\"blob-num js-line-number\" data-line-number=\"1264\"></td>\n        <td id=\"LC1264\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">xhr</span>.<span class=\"pl-en\">addEventListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>progress<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">evt</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1265\" class=\"blob-num js-line-number\" data-line-number=\"1265\"></td>\n        <td id=\"LC1265\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">emitter</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>receiveProgress<span class=\"pl-pds\">&#39;</span></span>, evt);</td>\n      </tr>\n      <tr>\n        <td id=\"L1266\" class=\"blob-num js-line-number\" data-line-number=\"1266\"></td>\n        <td id=\"LC1266\" class=\"blob-code blob-code-inner js-file-line\">    }, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1267\" class=\"blob-num js-line-number\" data-line-number=\"1267\"></td>\n        <td id=\"LC1267\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">xhr</span>.<span class=\"pl-en\">addEventListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>timeout<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> () {</td>\n      </tr>\n      <tr>\n        <td id=\"L1268\" class=\"blob-num js-line-number\" data-line-number=\"1268\"></td>\n        <td id=\"LC1268\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">errCallback</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Timeout<span class=\"pl-pds\">&#39;</span></span>), {code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>TimeoutError<span class=\"pl-pds\">&#39;</span></span>}));</td>\n      </tr>\n      <tr>\n        <td id=\"L1269\" class=\"blob-num js-line-number\" data-line-number=\"1269\"></td>\n        <td id=\"LC1269\" class=\"blob-code blob-code-inner js-file-line\">    }, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1270\" class=\"blob-num js-line-number\" data-line-number=\"1270\"></td>\n        <td id=\"LC1270\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">xhr</span>.<span class=\"pl-en\">addEventListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> () {</td>\n      </tr>\n      <tr>\n        <td id=\"L1271\" class=\"blob-num js-line-number\" data-line-number=\"1271\"></td>\n        <td id=\"LC1271\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">errCallback</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Network Failure<span class=\"pl-pds\">&#39;</span></span>), {</td>\n      </tr>\n      <tr>\n        <td id=\"L1272\" class=\"blob-num js-line-number\" data-line-number=\"1272\"></td>\n        <td id=\"LC1272\" class=\"blob-code blob-code-inner js-file-line\">        code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>NetworkingError<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L1273\" class=\"blob-num js-line-number\" data-line-number=\"1273\"></td>\n        <td id=\"LC1273\" class=\"blob-code blob-code-inner js-file-line\">      }));</td>\n      </tr>\n      <tr>\n        <td id=\"L1274\" class=\"blob-num js-line-number\" data-line-number=\"1274\"></td>\n        <td id=\"LC1274\" class=\"blob-code blob-code-inner js-file-line\">    }, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1275\" class=\"blob-num js-line-number\" data-line-number=\"1275\"></td>\n        <td id=\"LC1275\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1276\" class=\"blob-num js-line-number\" data-line-number=\"1276\"></td>\n        <td id=\"LC1276\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">callback</span>(emitter);</td>\n      </tr>\n      <tr>\n        <td id=\"L1277\" class=\"blob-num js-line-number\" data-line-number=\"1277\"></td>\n        <td id=\"LC1277\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">xhr</span>.<span class=\"pl-c1\">open</span>(<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">method</span>, href, <span class=\"pl-smi\">httpOptions</span>.<span class=\"pl-smi\">xhrAsync</span> <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1278\" class=\"blob-num js-line-number\" data-line-number=\"1278\"></td>\n        <td id=\"LC1278\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1279\" class=\"blob-num js-line-number\" data-line-number=\"1279\"></td>\n        <td id=\"LC1279\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (key <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Length<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> key <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>User-Agent<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> key <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Host<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1280\" class=\"blob-num js-line-number\" data-line-number=\"1280\"></td>\n        <td id=\"LC1280\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">xhr</span>.<span class=\"pl-c1\">setRequestHeader</span>(key, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L1281\" class=\"blob-num js-line-number\" data-line-number=\"1281\"></td>\n        <td id=\"LC1281\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1282\" class=\"blob-num js-line-number\" data-line-number=\"1282\"></td>\n        <td id=\"LC1282\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1283\" class=\"blob-num js-line-number\" data-line-number=\"1283\"></td>\n        <td id=\"LC1283\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1284\" class=\"blob-num js-line-number\" data-line-number=\"1284\"></td>\n        <td id=\"LC1284\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">httpOptions</span>.<span class=\"pl-smi\">timeout</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">httpOptions</span>.<span class=\"pl-smi\">xhrAsync</span> <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">false</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1285\" class=\"blob-num js-line-number\" data-line-number=\"1285\"></td>\n        <td id=\"LC1285\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">xhr</span>.<span class=\"pl-smi\">timeout</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">httpOptions</span>.<span class=\"pl-smi\">timeout</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1286\" class=\"blob-num js-line-number\" data-line-number=\"1286\"></td>\n        <td id=\"LC1286\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1287\" class=\"blob-num js-line-number\" data-line-number=\"1287\"></td>\n        <td id=\"LC1287\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1288\" class=\"blob-num js-line-number\" data-line-number=\"1288\"></td>\n        <td id=\"LC1288\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">httpOptions</span>.<span class=\"pl-smi\">xhrWithCredentials</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1289\" class=\"blob-num js-line-number\" data-line-number=\"1289\"></td>\n        <td id=\"LC1289\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">xhr</span>.<span class=\"pl-smi\">withCredentials</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1290\" class=\"blob-num js-line-number\" data-line-number=\"1290\"></td>\n        <td id=\"LC1290\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1291\" class=\"blob-num js-line-number\" data-line-number=\"1291\"></td>\n        <td id=\"LC1291\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1292\" class=\"blob-num js-line-number\" data-line-number=\"1292\"></td>\n        <td id=\"LC1292\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1293\" class=\"blob-num js-line-number\" data-line-number=\"1293\"></td>\n        <td id=\"LC1293\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">xhr</span>.<span class=\"pl-c1\">send</span>(<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1294\" class=\"blob-num js-line-number\" data-line-number=\"1294\"></td>\n        <td id=\"LC1294\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">catch</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1295\" class=\"blob-num js-line-number\" data-line-number=\"1295\"></td>\n        <td id=\"LC1295\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span>.<span class=\"pl-smi\">buffer</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1296\" class=\"blob-num js-line-number\" data-line-number=\"1296\"></td>\n        <td id=\"LC1296\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">xhr</span>.<span class=\"pl-c1\">send</span>(<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span>.<span class=\"pl-smi\">buffer</span>); <span class=\"pl-c\">// send ArrayBuffer directly</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1297\" class=\"blob-num js-line-number\" data-line-number=\"1297\"></td>\n        <td id=\"LC1297\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1298\" class=\"blob-num js-line-number\" data-line-number=\"1298\"></td>\n        <td id=\"LC1298\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> err;</td>\n      </tr>\n      <tr>\n        <td id=\"L1299\" class=\"blob-num js-line-number\" data-line-number=\"1299\"></td>\n        <td id=\"LC1299\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1300\" class=\"blob-num js-line-number\" data-line-number=\"1300\"></td>\n        <td id=\"LC1300\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1301\" class=\"blob-num js-line-number\" data-line-number=\"1301\"></td>\n        <td id=\"LC1301\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1302\" class=\"blob-num js-line-number\" data-line-number=\"1302\"></td>\n        <td id=\"LC1302\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> emitter;</td>\n      </tr>\n      <tr>\n        <td id=\"L1303\" class=\"blob-num js-line-number\" data-line-number=\"1303\"></td>\n        <td id=\"LC1303\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L1304\" class=\"blob-num js-line-number\" data-line-number=\"1304\"></td>\n        <td id=\"LC1304\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1305\" class=\"blob-num js-line-number\" data-line-number=\"1305\"></td>\n        <td id=\"LC1305\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">parseHeaders</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">parseHeaders</span>(<span class=\"pl-smi\">rawHeaders</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1306\" class=\"blob-num js-line-number\" data-line-number=\"1306\"></td>\n        <td id=\"LC1306\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> headers <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1307\" class=\"blob-num js-line-number\" data-line-number=\"1307\"></td>\n        <td id=\"LC1307\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(<span class=\"pl-smi\">rawHeaders</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\r</span><span class=\"pl-k\">?</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">/</span></span>), <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">line</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1308\" class=\"blob-num js-line-number\" data-line-number=\"1308\"></td>\n        <td id=\"LC1308\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> <span class=\"pl-smi\">line</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">1</span>)[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L1309\" class=\"blob-num js-line-number\" data-line-number=\"1309\"></td>\n        <td id=\"LC1309\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> <span class=\"pl-smi\">line</span>.<span class=\"pl-c1\">substring</span>(<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1310\" class=\"blob-num js-line-number\" data-line-number=\"1310\"></td>\n        <td id=\"LC1310\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>) headers[<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">toLowerCase</span>()] <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L1311\" class=\"blob-num js-line-number\" data-line-number=\"1311\"></td>\n        <td id=\"LC1311\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1312\" class=\"blob-num js-line-number\" data-line-number=\"1312\"></td>\n        <td id=\"LC1312\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> headers;</td>\n      </tr>\n      <tr>\n        <td id=\"L1313\" class=\"blob-num js-line-number\" data-line-number=\"1313\"></td>\n        <td id=\"LC1313\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L1314\" class=\"blob-num js-line-number\" data-line-number=\"1314\"></td>\n        <td id=\"LC1314\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1315\" class=\"blob-num js-line-number\" data-line-number=\"1315\"></td>\n        <td id=\"LC1315\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">finishRequest</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">finishRequest</span>(<span class=\"pl-smi\">xhr</span>, <span class=\"pl-smi\">emitter</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1316\" class=\"blob-num js-line-number\" data-line-number=\"1316\"></td>\n        <td id=\"LC1316\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> buffer;</td>\n      </tr>\n      <tr>\n        <td id=\"L1317\" class=\"blob-num js-line-number\" data-line-number=\"1317\"></td>\n        <td id=\"LC1317\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">xhr</span>.<span class=\"pl-smi\">responseType</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>arraybuffer<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">xhr</span>.<span class=\"pl-smi\">response</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1318\" class=\"blob-num js-line-number\" data-line-number=\"1318\"></td>\n        <td id=\"LC1318\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> ab <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xhr</span>.<span class=\"pl-smi\">response</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1319\" class=\"blob-num js-line-number\" data-line-number=\"1319\"></td>\n        <td id=\"LC1319\" class=\"blob-code blob-code-inner js-file-line\">      buffer <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.util</span>.<span class=\"pl-en\">Buffer</span>(<span class=\"pl-smi\">ab</span>.<span class=\"pl-smi\">byteLength</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1320\" class=\"blob-num js-line-number\" data-line-number=\"1320\"></td>\n        <td id=\"LC1320\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> view <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Uint8Array</span>(ab);</td>\n      </tr>\n      <tr>\n        <td id=\"L1321\" class=\"blob-num js-line-number\" data-line-number=\"1321\"></td>\n        <td id=\"LC1321\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buffer</span>.<span class=\"pl-c1\">length</span>; <span class=\"pl-k\">++</span>i) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1322\" class=\"blob-num js-line-number\" data-line-number=\"1322\"></td>\n        <td id=\"LC1322\" class=\"blob-code blob-code-inner js-file-line\">        buffer[i] <span class=\"pl-k\">=</span> view[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L1323\" class=\"blob-num js-line-number\" data-line-number=\"1323\"></td>\n        <td id=\"LC1323\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1324\" class=\"blob-num js-line-number\" data-line-number=\"1324\"></td>\n        <td id=\"LC1324\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1325\" class=\"blob-num js-line-number\" data-line-number=\"1325\"></td>\n        <td id=\"LC1325\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1326\" class=\"blob-num js-line-number\" data-line-number=\"1326\"></td>\n        <td id=\"LC1326\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1327\" class=\"blob-num js-line-number\" data-line-number=\"1327\"></td>\n        <td id=\"LC1327\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>buffer <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">xhr</span>.<span class=\"pl-smi\">responseText</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1328\" class=\"blob-num js-line-number\" data-line-number=\"1328\"></td>\n        <td id=\"LC1328\" class=\"blob-code blob-code-inner js-file-line\">        buffer <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.util</span>.<span class=\"pl-en\">Buffer</span>(<span class=\"pl-smi\">xhr</span>.<span class=\"pl-smi\">responseText</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1329\" class=\"blob-num js-line-number\" data-line-number=\"1329\"></td>\n        <td id=\"LC1329\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1330\" class=\"blob-num js-line-number\" data-line-number=\"1330\"></td>\n        <td id=\"LC1330\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">catch</span> (e) {}</td>\n      </tr>\n      <tr>\n        <td id=\"L1331\" class=\"blob-num js-line-number\" data-line-number=\"1331\"></td>\n        <td id=\"LC1331\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1332\" class=\"blob-num js-line-number\" data-line-number=\"1332\"></td>\n        <td id=\"LC1332\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (buffer) <span class=\"pl-smi\">emitter</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>data<span class=\"pl-pds\">&#39;</span></span>, buffer);</td>\n      </tr>\n      <tr>\n        <td id=\"L1333\" class=\"blob-num js-line-number\" data-line-number=\"1333\"></td>\n        <td id=\"LC1333\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">emitter</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>end<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1334\" class=\"blob-num js-line-number\" data-line-number=\"1334\"></td>\n        <td id=\"LC1334\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1335\" class=\"blob-num js-line-number\" data-line-number=\"1335\"></td>\n        <td id=\"LC1335\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L1336\" class=\"blob-num js-line-number\" data-line-number=\"1336\"></td>\n        <td id=\"LC1336\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1337\" class=\"blob-num js-line-number\" data-line-number=\"1337\"></td>\n        <td id=\"LC1337\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1338\" class=\"blob-num js-line-number\" data-line-number=\"1338\"></td>\n        <td id=\"LC1338\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">HttpClient</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">XHRClient</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1339\" class=\"blob-num js-line-number\" data-line-number=\"1339\"></td>\n        <td id=\"LC1339\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1340\" class=\"blob-num js-line-number\" data-line-number=\"1340\"></td>\n        <td id=\"LC1340\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1341\" class=\"blob-num js-line-number\" data-line-number=\"1341\"></td>\n        <td id=\"LC1341\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">HttpClient</span>.<span class=\"pl-smi\">streamsApiVersion</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1342\" class=\"blob-num js-line-number\" data-line-number=\"1342\"></td>\n        <td id=\"LC1342\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1343\" class=\"blob-num js-line-number\" data-line-number=\"1343\"></td>\n        <td id=\"LC1343\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../http<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">11</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>events<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">56</span>}],<span class=\"pl-c1\">13</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L1344\" class=\"blob-num js-line-number\" data-line-number=\"1344\"></td>\n        <td id=\"LC1344\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1345\" class=\"blob-num js-line-number\" data-line-number=\"1345\"></td>\n        <td id=\"LC1345\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1346\" class=\"blob-num js-line-number\" data-line-number=\"1346\"></td>\n        <td id=\"LC1346\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">JsonBuilder</span>() { }</td>\n      </tr>\n      <tr>\n        <td id=\"L1347\" class=\"blob-num js-line-number\" data-line-number=\"1347\"></td>\n        <td id=\"LC1347\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1348\" class=\"blob-num js-line-number\" data-line-number=\"1348\"></td>\n        <td id=\"LC1348\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">JsonBuilder</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">build</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1349\" class=\"blob-num js-line-number\" data-line-number=\"1349\"></td>\n        <td id=\"LC1349\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">JSON</span>.<span class=\"pl-en\">stringify</span>(<span class=\"pl-en\">translate</span>(value, shape));</td>\n      </tr>\n      <tr>\n        <td id=\"L1350\" class=\"blob-num js-line-number\" data-line-number=\"1350\"></td>\n        <td id=\"LC1350\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L1351\" class=\"blob-num js-line-number\" data-line-number=\"1351\"></td>\n        <td id=\"LC1351\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1352\" class=\"blob-num js-line-number\" data-line-number=\"1352\"></td>\n        <td id=\"LC1352\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">translate</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1353\" class=\"blob-num js-line-number\" data-line-number=\"1353\"></td>\n        <td id=\"LC1353\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>shape <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1354\" class=\"blob-num js-line-number\" data-line-number=\"1354\"></td>\n        <td id=\"LC1354\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1355\" class=\"blob-num js-line-number\" data-line-number=\"1355\"></td>\n        <td id=\"LC1355\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1356\" class=\"blob-num js-line-number\" data-line-number=\"1356\"></td>\n        <td id=\"LC1356\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">translateStructure</span>(value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1357\" class=\"blob-num js-line-number\" data-line-number=\"1357\"></td>\n        <td id=\"LC1357\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">translateMap</span>(value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1358\" class=\"blob-num js-line-number\" data-line-number=\"1358\"></td>\n        <td id=\"LC1358\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">translateList</span>(value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1359\" class=\"blob-num js-line-number\" data-line-number=\"1359\"></td>\n        <td id=\"LC1359\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">translateScalar</span>(value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1360\" class=\"blob-num js-line-number\" data-line-number=\"1360\"></td>\n        <td id=\"LC1360\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1361\" class=\"blob-num js-line-number\" data-line-number=\"1361\"></td>\n        <td id=\"LC1361\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1362\" class=\"blob-num js-line-number\" data-line-number=\"1362\"></td>\n        <td id=\"LC1362\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1363\" class=\"blob-num js-line-number\" data-line-number=\"1363\"></td>\n        <td id=\"LC1363\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">translateStructure</span>(<span class=\"pl-smi\">structure</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1364\" class=\"blob-num js-line-number\" data-line-number=\"1364\"></td>\n        <td id=\"LC1364\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> struct <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1365\" class=\"blob-num js-line-number\" data-line-number=\"1365\"></td>\n        <td id=\"LC1365\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(structure, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1366\" class=\"blob-num js-line-number\" data-line-number=\"1366\"></td>\n        <td id=\"LC1366\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> memberShape <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>[name];</td>\n      </tr>\n      <tr>\n        <td id=\"L1367\" class=\"blob-num js-line-number\" data-line-number=\"1367\"></td>\n        <td id=\"LC1367\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (memberShape) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1368\" class=\"blob-num js-line-number\" data-line-number=\"1368\"></td>\n        <td id=\"LC1368\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">memberShape</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>body<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1369\" class=\"blob-num js-line-number\" data-line-number=\"1369\"></td>\n        <td id=\"LC1369\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> locationName <span class=\"pl-k\">=</span> <span class=\"pl-smi\">memberShape</span>.<span class=\"pl-smi\">isLocationName</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">memberShape</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">:</span> name;</td>\n      </tr>\n      <tr>\n        <td id=\"L1370\" class=\"blob-num js-line-number\" data-line-number=\"1370\"></td>\n        <td id=\"LC1370\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-en\">translate</span>(value, memberShape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1371\" class=\"blob-num js-line-number\" data-line-number=\"1371\"></td>\n        <td id=\"LC1371\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (result <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) struct[locationName] <span class=\"pl-k\">=</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L1372\" class=\"blob-num js-line-number\" data-line-number=\"1372\"></td>\n        <td id=\"LC1372\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1373\" class=\"blob-num js-line-number\" data-line-number=\"1373\"></td>\n        <td id=\"LC1373\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1374\" class=\"blob-num js-line-number\" data-line-number=\"1374\"></td>\n        <td id=\"LC1374\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> struct;</td>\n      </tr>\n      <tr>\n        <td id=\"L1375\" class=\"blob-num js-line-number\" data-line-number=\"1375\"></td>\n        <td id=\"LC1375\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1376\" class=\"blob-num js-line-number\" data-line-number=\"1376\"></td>\n        <td id=\"LC1376\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1377\" class=\"blob-num js-line-number\" data-line-number=\"1377\"></td>\n        <td id=\"LC1377\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">translateList</span>(<span class=\"pl-smi\">list</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1378\" class=\"blob-num js-line-number\" data-line-number=\"1378\"></td>\n        <td id=\"LC1378\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> out <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L1379\" class=\"blob-num js-line-number\" data-line-number=\"1379\"></td>\n        <td id=\"LC1379\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(list, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1380\" class=\"blob-num js-line-number\" data-line-number=\"1380\"></td>\n        <td id=\"LC1380\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-en\">translate</span>(value, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1381\" class=\"blob-num js-line-number\" data-line-number=\"1381\"></td>\n        <td id=\"LC1381\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (result <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-smi\">out</span>.<span class=\"pl-c1\">push</span>(result);</td>\n      </tr>\n      <tr>\n        <td id=\"L1382\" class=\"blob-num js-line-number\" data-line-number=\"1382\"></td>\n        <td id=\"LC1382\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1383\" class=\"blob-num js-line-number\" data-line-number=\"1383\"></td>\n        <td id=\"LC1383\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> out;</td>\n      </tr>\n      <tr>\n        <td id=\"L1384\" class=\"blob-num js-line-number\" data-line-number=\"1384\"></td>\n        <td id=\"LC1384\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1385\" class=\"blob-num js-line-number\" data-line-number=\"1385\"></td>\n        <td id=\"LC1385\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1386\" class=\"blob-num js-line-number\" data-line-number=\"1386\"></td>\n        <td id=\"LC1386\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">translateMap</span>(<span class=\"pl-smi\">map</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1387\" class=\"blob-num js-line-number\" data-line-number=\"1387\"></td>\n        <td id=\"LC1387\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> out <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1388\" class=\"blob-num js-line-number\" data-line-number=\"1388\"></td>\n        <td id=\"LC1388\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(map, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1389\" class=\"blob-num js-line-number\" data-line-number=\"1389\"></td>\n        <td id=\"LC1389\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-en\">translate</span>(value, <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">value</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1390\" class=\"blob-num js-line-number\" data-line-number=\"1390\"></td>\n        <td id=\"LC1390\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (result <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) out[key] <span class=\"pl-k\">=</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L1391\" class=\"blob-num js-line-number\" data-line-number=\"1391\"></td>\n        <td id=\"LC1391\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1392\" class=\"blob-num js-line-number\" data-line-number=\"1392\"></td>\n        <td id=\"LC1392\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> out;</td>\n      </tr>\n      <tr>\n        <td id=\"L1393\" class=\"blob-num js-line-number\" data-line-number=\"1393\"></td>\n        <td id=\"LC1393\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1394\" class=\"blob-num js-line-number\" data-line-number=\"1394\"></td>\n        <td id=\"LC1394\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1395\" class=\"blob-num js-line-number\" data-line-number=\"1395\"></td>\n        <td id=\"LC1395\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">translateScalar</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1396\" class=\"blob-num js-line-number\" data-line-number=\"1396\"></td>\n        <td id=\"LC1396\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-en\">toWireFormat</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L1397\" class=\"blob-num js-line-number\" data-line-number=\"1397\"></td>\n        <td id=\"LC1397\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1398\" class=\"blob-num js-line-number\" data-line-number=\"1398\"></td>\n        <td id=\"LC1398\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1399\" class=\"blob-num js-line-number\" data-line-number=\"1399\"></td>\n        <td id=\"LC1399\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> JsonBuilder;</td>\n      </tr>\n      <tr>\n        <td id=\"L1400\" class=\"blob-num js-line-number\" data-line-number=\"1400\"></td>\n        <td id=\"LC1400\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1401\" class=\"blob-num js-line-number\" data-line-number=\"1401\"></td>\n        <td id=\"LC1401\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>}],<span class=\"pl-c1\">14</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L1402\" class=\"blob-num js-line-number\" data-line-number=\"1402\"></td>\n        <td id=\"LC1402\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1403\" class=\"blob-num js-line-number\" data-line-number=\"1403\"></td>\n        <td id=\"LC1403\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1404\" class=\"blob-num js-line-number\" data-line-number=\"1404\"></td>\n        <td id=\"LC1404\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">JsonParser</span>() { }</td>\n      </tr>\n      <tr>\n        <td id=\"L1405\" class=\"blob-num js-line-number\" data-line-number=\"1405\"></td>\n        <td id=\"LC1405\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1406\" class=\"blob-num js-line-number\" data-line-number=\"1406\"></td>\n        <td id=\"LC1406\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">JsonParser</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">parse</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1407\" class=\"blob-num js-line-number\" data-line-number=\"1407\"></td>\n        <td id=\"LC1407\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">translate</span>(<span class=\"pl-c1\">JSON</span>.<span class=\"pl-c1\">parse</span>(value), shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1408\" class=\"blob-num js-line-number\" data-line-number=\"1408\"></td>\n        <td id=\"LC1408\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L1409\" class=\"blob-num js-line-number\" data-line-number=\"1409\"></td>\n        <td id=\"LC1409\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1410\" class=\"blob-num js-line-number\" data-line-number=\"1410\"></td>\n        <td id=\"LC1410\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">translate</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1411\" class=\"blob-num js-line-number\" data-line-number=\"1411\"></td>\n        <td id=\"LC1411\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>shape <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1412\" class=\"blob-num js-line-number\" data-line-number=\"1412\"></td>\n        <td id=\"LC1412\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1413\" class=\"blob-num js-line-number\" data-line-number=\"1413\"></td>\n        <td id=\"LC1413\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1414\" class=\"blob-num js-line-number\" data-line-number=\"1414\"></td>\n        <td id=\"LC1414\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">translateStructure</span>(value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1415\" class=\"blob-num js-line-number\" data-line-number=\"1415\"></td>\n        <td id=\"LC1415\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">translateMap</span>(value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1416\" class=\"blob-num js-line-number\" data-line-number=\"1416\"></td>\n        <td id=\"LC1416\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">translateList</span>(value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1417\" class=\"blob-num js-line-number\" data-line-number=\"1417\"></td>\n        <td id=\"LC1417\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">translateScalar</span>(value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1418\" class=\"blob-num js-line-number\" data-line-number=\"1418\"></td>\n        <td id=\"LC1418\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1419\" class=\"blob-num js-line-number\" data-line-number=\"1419\"></td>\n        <td id=\"LC1419\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1420\" class=\"blob-num js-line-number\" data-line-number=\"1420\"></td>\n        <td id=\"LC1420\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1421\" class=\"blob-num js-line-number\" data-line-number=\"1421\"></td>\n        <td id=\"LC1421\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">translateStructure</span>(<span class=\"pl-smi\">structure</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1422\" class=\"blob-num js-line-number\" data-line-number=\"1422\"></td>\n        <td id=\"LC1422\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (structure <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1423\" class=\"blob-num js-line-number\" data-line-number=\"1423\"></td>\n        <td id=\"LC1423\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1424\" class=\"blob-num js-line-number\" data-line-number=\"1424\"></td>\n        <td id=\"LC1424\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> struct <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1425\" class=\"blob-num js-line-number\" data-line-number=\"1425\"></td>\n        <td id=\"LC1425\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> shapeMembers <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1426\" class=\"blob-num js-line-number\" data-line-number=\"1426\"></td>\n        <td id=\"LC1426\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(shapeMembers, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">memberShape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1427\" class=\"blob-num js-line-number\" data-line-number=\"1427\"></td>\n        <td id=\"LC1427\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> locationName <span class=\"pl-k\">=</span> <span class=\"pl-smi\">memberShape</span>.<span class=\"pl-smi\">isLocationName</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">memberShape</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">:</span> name;</td>\n      </tr>\n      <tr>\n        <td id=\"L1428\" class=\"blob-num js-line-number\" data-line-number=\"1428\"></td>\n        <td id=\"LC1428\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">structure</span>.<span class=\"pl-en\">hasOwnProperty</span>(locationName)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1429\" class=\"blob-num js-line-number\" data-line-number=\"1429\"></td>\n        <td id=\"LC1429\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> structure[locationName];</td>\n      </tr>\n      <tr>\n        <td id=\"L1430\" class=\"blob-num js-line-number\" data-line-number=\"1430\"></td>\n        <td id=\"LC1430\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-en\">translate</span>(value, memberShape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1431\" class=\"blob-num js-line-number\" data-line-number=\"1431\"></td>\n        <td id=\"LC1431\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (result <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) struct[name] <span class=\"pl-k\">=</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L1432\" class=\"blob-num js-line-number\" data-line-number=\"1432\"></td>\n        <td id=\"LC1432\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1433\" class=\"blob-num js-line-number\" data-line-number=\"1433\"></td>\n        <td id=\"LC1433\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1434\" class=\"blob-num js-line-number\" data-line-number=\"1434\"></td>\n        <td id=\"LC1434\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> struct;</td>\n      </tr>\n      <tr>\n        <td id=\"L1435\" class=\"blob-num js-line-number\" data-line-number=\"1435\"></td>\n        <td id=\"LC1435\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1436\" class=\"blob-num js-line-number\" data-line-number=\"1436\"></td>\n        <td id=\"LC1436\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1437\" class=\"blob-num js-line-number\" data-line-number=\"1437\"></td>\n        <td id=\"LC1437\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">translateList</span>(<span class=\"pl-smi\">list</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1438\" class=\"blob-num js-line-number\" data-line-number=\"1438\"></td>\n        <td id=\"LC1438\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (list <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1439\" class=\"blob-num js-line-number\" data-line-number=\"1439\"></td>\n        <td id=\"LC1439\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1440\" class=\"blob-num js-line-number\" data-line-number=\"1440\"></td>\n        <td id=\"LC1440\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> out <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L1441\" class=\"blob-num js-line-number\" data-line-number=\"1441\"></td>\n        <td id=\"LC1441\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(list, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1442\" class=\"blob-num js-line-number\" data-line-number=\"1442\"></td>\n        <td id=\"LC1442\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-en\">translate</span>(value, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1443\" class=\"blob-num js-line-number\" data-line-number=\"1443\"></td>\n        <td id=\"LC1443\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (result <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-smi\">out</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-c1\">null</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1444\" class=\"blob-num js-line-number\" data-line-number=\"1444\"></td>\n        <td id=\"LC1444\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">else</span> <span class=\"pl-smi\">out</span>.<span class=\"pl-c1\">push</span>(result);</td>\n      </tr>\n      <tr>\n        <td id=\"L1445\" class=\"blob-num js-line-number\" data-line-number=\"1445\"></td>\n        <td id=\"LC1445\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1446\" class=\"blob-num js-line-number\" data-line-number=\"1446\"></td>\n        <td id=\"LC1446\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> out;</td>\n      </tr>\n      <tr>\n        <td id=\"L1447\" class=\"blob-num js-line-number\" data-line-number=\"1447\"></td>\n        <td id=\"LC1447\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1448\" class=\"blob-num js-line-number\" data-line-number=\"1448\"></td>\n        <td id=\"LC1448\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1449\" class=\"blob-num js-line-number\" data-line-number=\"1449\"></td>\n        <td id=\"LC1449\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">translateMap</span>(<span class=\"pl-smi\">map</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1450\" class=\"blob-num js-line-number\" data-line-number=\"1450\"></td>\n        <td id=\"LC1450\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (map <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1451\" class=\"blob-num js-line-number\" data-line-number=\"1451\"></td>\n        <td id=\"LC1451\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1452\" class=\"blob-num js-line-number\" data-line-number=\"1452\"></td>\n        <td id=\"LC1452\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> out <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1453\" class=\"blob-num js-line-number\" data-line-number=\"1453\"></td>\n        <td id=\"LC1453\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(map, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1454\" class=\"blob-num js-line-number\" data-line-number=\"1454\"></td>\n        <td id=\"LC1454\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-en\">translate</span>(value, <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">value</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1455\" class=\"blob-num js-line-number\" data-line-number=\"1455\"></td>\n        <td id=\"LC1455\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (result <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) out[key] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1456\" class=\"blob-num js-line-number\" data-line-number=\"1456\"></td>\n        <td id=\"LC1456\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">else</span> out[key] <span class=\"pl-k\">=</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L1457\" class=\"blob-num js-line-number\" data-line-number=\"1457\"></td>\n        <td id=\"LC1457\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1458\" class=\"blob-num js-line-number\" data-line-number=\"1458\"></td>\n        <td id=\"LC1458\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> out;</td>\n      </tr>\n      <tr>\n        <td id=\"L1459\" class=\"blob-num js-line-number\" data-line-number=\"1459\"></td>\n        <td id=\"LC1459\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1460\" class=\"blob-num js-line-number\" data-line-number=\"1460\"></td>\n        <td id=\"LC1460\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1461\" class=\"blob-num js-line-number\" data-line-number=\"1461\"></td>\n        <td id=\"LC1461\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">translateScalar</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1462\" class=\"blob-num js-line-number\" data-line-number=\"1462\"></td>\n        <td id=\"LC1462\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-en\">toType</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L1463\" class=\"blob-num js-line-number\" data-line-number=\"1463\"></td>\n        <td id=\"LC1463\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1464\" class=\"blob-num js-line-number\" data-line-number=\"1464\"></td>\n        <td id=\"LC1464\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1465\" class=\"blob-num js-line-number\" data-line-number=\"1465\"></td>\n        <td id=\"LC1465\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> JsonParser;</td>\n      </tr>\n      <tr>\n        <td id=\"L1466\" class=\"blob-num js-line-number\" data-line-number=\"1466\"></td>\n        <td id=\"LC1466\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1467\" class=\"blob-num js-line-number\" data-line-number=\"1467\"></td>\n        <td id=\"LC1467\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>}],<span class=\"pl-c1\">15</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L1468\" class=\"blob-num js-line-number\" data-line-number=\"1468\"></td>\n        <td id=\"LC1468\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Collection <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./collection<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1469\" class=\"blob-num js-line-number\" data-line-number=\"1469\"></td>\n        <td id=\"LC1469\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Operation <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./operation<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1470\" class=\"blob-num js-line-number\" data-line-number=\"1470\"></td>\n        <td id=\"LC1470\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Shape <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./shape<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1471\" class=\"blob-num js-line-number\" data-line-number=\"1471\"></td>\n        <td id=\"LC1471\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Paginator <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./paginator<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1472\" class=\"blob-num js-line-number\" data-line-number=\"1472\"></td>\n        <td id=\"LC1472\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> ResourceWaiter <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./resource_waiter<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1473\" class=\"blob-num js-line-number\" data-line-number=\"1473\"></td>\n        <td id=\"LC1473\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1474\" class=\"blob-num js-line-number\" data-line-number=\"1474\"></td>\n        <td id=\"LC1474\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1475\" class=\"blob-num js-line-number\" data-line-number=\"1475\"></td>\n        <td id=\"LC1475\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> property <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">property</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1476\" class=\"blob-num js-line-number\" data-line-number=\"1476\"></td>\n        <td id=\"LC1476\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> memoizedProperty <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">memoizedProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1477\" class=\"blob-num js-line-number\" data-line-number=\"1477\"></td>\n        <td id=\"LC1477\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1478\" class=\"blob-num js-line-number\" data-line-number=\"1478\"></td>\n        <td id=\"LC1478\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">Api</span>(<span class=\"pl-smi\">api</span>, <span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1479\" class=\"blob-num js-line-number\" data-line-number=\"1479\"></td>\n        <td id=\"LC1479\" class=\"blob-code blob-code-inner js-file-line\">  api <span class=\"pl-k\">=</span> api <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1480\" class=\"blob-num js-line-number\" data-line-number=\"1480\"></td>\n        <td id=\"LC1480\" class=\"blob-code blob-code-inner js-file-line\">  options <span class=\"pl-k\">=</span> options <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1481\" class=\"blob-num js-line-number\" data-line-number=\"1481\"></td>\n        <td id=\"LC1481\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">api</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1482\" class=\"blob-num js-line-number\" data-line-number=\"1482\"></td>\n        <td id=\"LC1482\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1483\" class=\"blob-num js-line-number\" data-line-number=\"1483\"></td>\n        <td id=\"LC1483\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span> <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1484\" class=\"blob-num js-line-number\" data-line-number=\"1484\"></td>\n        <td id=\"LC1484\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1485\" class=\"blob-num js-line-number\" data-line-number=\"1485\"></td>\n        <td id=\"LC1485\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>isApi<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">true</span>, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1486\" class=\"blob-num js-line-number\" data-line-number=\"1486\"></td>\n        <td id=\"LC1486\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>apiVersion<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">apiVersion</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1487\" class=\"blob-num js-line-number\" data-line-number=\"1487\"></td>\n        <td id=\"LC1487\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>endpointPrefix<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">endpointPrefix</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1488\" class=\"blob-num js-line-number\" data-line-number=\"1488\"></td>\n        <td id=\"LC1488\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>signingName<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">signingName</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1489\" class=\"blob-num js-line-number\" data-line-number=\"1489\"></td>\n        <td id=\"LC1489\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>globalEndpoint<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">globalEndpoint</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1490\" class=\"blob-num js-line-number\" data-line-number=\"1490\"></td>\n        <td id=\"LC1490\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>signatureVersion<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">signatureVersion</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1491\" class=\"blob-num js-line-number\" data-line-number=\"1491\"></td>\n        <td id=\"LC1491\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>jsonVersion<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">jsonVersion</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1492\" class=\"blob-num js-line-number\" data-line-number=\"1492\"></td>\n        <td id=\"LC1492\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>targetPrefix<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">targetPrefix</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1493\" class=\"blob-num js-line-number\" data-line-number=\"1493\"></td>\n        <td id=\"LC1493\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>protocol<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-c1\">protocol</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1494\" class=\"blob-num js-line-number\" data-line-number=\"1494\"></td>\n        <td id=\"LC1494\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>timestampFormat<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">timestampFormat</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1495\" class=\"blob-num js-line-number\" data-line-number=\"1495\"></td>\n        <td id=\"LC1495\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>xmlNamespaceUri<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">xmlNamespace</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1496\" class=\"blob-num js-line-number\" data-line-number=\"1496\"></td>\n        <td id=\"LC1496\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>abbreviation<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">serviceAbbreviation</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1497\" class=\"blob-num js-line-number\" data-line-number=\"1497\"></td>\n        <td id=\"LC1497\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>fullName<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">serviceFullName</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1498\" class=\"blob-num js-line-number\" data-line-number=\"1498\"></td>\n        <td id=\"LC1498\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1499\" class=\"blob-num js-line-number\" data-line-number=\"1499\"></td>\n        <td id=\"LC1499\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>className<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1500\" class=\"blob-num js-line-number\" data-line-number=\"1500\"></td>\n        <td id=\"LC1500\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">serviceAbbreviation</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">metadata</span>.<span class=\"pl-smi\">serviceFullName</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1501\" class=\"blob-num js-line-number\" data-line-number=\"1501\"></td>\n        <td id=\"LC1501\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>name) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1502\" class=\"blob-num js-line-number\" data-line-number=\"1502\"></td>\n        <td id=\"LC1502\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1503\" class=\"blob-num js-line-number\" data-line-number=\"1503\"></td>\n        <td id=\"LC1503\" class=\"blob-code blob-code-inner js-file-line\">    name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span>Amazon<span class=\"pl-k\">|</span>AWS<span class=\"pl-c1\">\\s</span><span class=\"pl-k\">*</span><span class=\"pl-k\">|</span><span class=\"pl-cce\">\\(</span><span class=\"pl-c1\">.</span><span class=\"pl-k\">*</span><span class=\"pl-k\">|</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">+</span><span class=\"pl-k\">|</span><span class=\"pl-c1\">\\W</span><span class=\"pl-k\">+</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1504\" class=\"blob-num js-line-number\" data-line-number=\"1504\"></td>\n        <td id=\"LC1504\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ElasticLoadBalancing<span class=\"pl-pds\">&#39;</span></span>) name <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ELB<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1505\" class=\"blob-num js-line-number\" data-line-number=\"1505\"></td>\n        <td id=\"LC1505\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> name;</td>\n      </tr>\n      <tr>\n        <td id=\"L1506\" class=\"blob-num js-line-number\" data-line-number=\"1506\"></td>\n        <td id=\"LC1506\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1507\" class=\"blob-num js-line-number\" data-line-number=\"1507\"></td>\n        <td id=\"LC1507\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1508\" class=\"blob-num js-line-number\" data-line-number=\"1508\"></td>\n        <td id=\"LC1508\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>operations<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">new</span> <span class=\"pl-en\">Collection</span>(<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>, options, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">operation</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1509\" class=\"blob-num js-line-number\" data-line-number=\"1509\"></td>\n        <td id=\"LC1509\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Operation</span>(name, operation, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1510\" class=\"blob-num js-line-number\" data-line-number=\"1510\"></td>\n        <td id=\"LC1510\" class=\"blob-code blob-code-inner js-file-line\">  }, <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">string</span>.<span class=\"pl-smi\">lowerFirst</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L1511\" class=\"blob-num js-line-number\" data-line-number=\"1511\"></td>\n        <td id=\"LC1511\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1512\" class=\"blob-num js-line-number\" data-line-number=\"1512\"></td>\n        <td id=\"LC1512\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>shapes<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">new</span> <span class=\"pl-en\">Collection</span>(<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">shapes</span>, options, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1513\" class=\"blob-num js-line-number\" data-line-number=\"1513\"></td>\n        <td id=\"LC1513\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>(shape, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1514\" class=\"blob-num js-line-number\" data-line-number=\"1514\"></td>\n        <td id=\"LC1514\" class=\"blob-code blob-code-inner js-file-line\">  }));</td>\n      </tr>\n      <tr>\n        <td id=\"L1515\" class=\"blob-num js-line-number\" data-line-number=\"1515\"></td>\n        <td id=\"LC1515\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1516\" class=\"blob-num js-line-number\" data-line-number=\"1516\"></td>\n        <td id=\"LC1516\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>paginators<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">new</span> <span class=\"pl-en\">Collection</span>(<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">paginators</span>, options, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">paginator</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1517\" class=\"blob-num js-line-number\" data-line-number=\"1517\"></td>\n        <td id=\"LC1517\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Paginator</span>(name, paginator, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1518\" class=\"blob-num js-line-number\" data-line-number=\"1518\"></td>\n        <td id=\"LC1518\" class=\"blob-code blob-code-inner js-file-line\">  }));</td>\n      </tr>\n      <tr>\n        <td id=\"L1519\" class=\"blob-num js-line-number\" data-line-number=\"1519\"></td>\n        <td id=\"LC1519\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1520\" class=\"blob-num js-line-number\" data-line-number=\"1520\"></td>\n        <td id=\"LC1520\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>waiters<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">new</span> <span class=\"pl-en\">Collection</span>(<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">waiters</span>, options, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">waiter</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1521\" class=\"blob-num js-line-number\" data-line-number=\"1521\"></td>\n        <td id=\"LC1521\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">ResourceWaiter</span>(name, waiter, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1522\" class=\"blob-num js-line-number\" data-line-number=\"1522\"></td>\n        <td id=\"LC1522\" class=\"blob-code blob-code-inner js-file-line\">  }, <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">string</span>.<span class=\"pl-smi\">lowerFirst</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L1523\" class=\"blob-num js-line-number\" data-line-number=\"1523\"></td>\n        <td id=\"LC1523\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1524\" class=\"blob-num js-line-number\" data-line-number=\"1524\"></td>\n        <td id=\"LC1524\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">documentation</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1525\" class=\"blob-num js-line-number\" data-line-number=\"1525\"></td>\n        <td id=\"LC1525\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>documentation<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">documentation</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1526\" class=\"blob-num js-line-number\" data-line-number=\"1526\"></td>\n        <td id=\"LC1526\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>documentationUrl<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">documentationUrl</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1527\" class=\"blob-num js-line-number\" data-line-number=\"1527\"></td>\n        <td id=\"LC1527\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1528\" class=\"blob-num js-line-number\" data-line-number=\"1528\"></td>\n        <td id=\"LC1528\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1529\" class=\"blob-num js-line-number\" data-line-number=\"1529\"></td>\n        <td id=\"LC1529\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1530\" class=\"blob-num js-line-number\" data-line-number=\"1530\"></td>\n        <td id=\"LC1530\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> Api;</td>\n      </tr>\n      <tr>\n        <td id=\"L1531\" class=\"blob-num js-line-number\" data-line-number=\"1531\"></td>\n        <td id=\"LC1531\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1532\" class=\"blob-num js-line-number\" data-line-number=\"1532\"></td>\n        <td id=\"LC1532\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./collection<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">16</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./operation<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">17</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./paginator<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">18</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./resource_waiter<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">19</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./shape<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">20</span>}],<span class=\"pl-c1\">16</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L1533\" class=\"blob-num js-line-number\" data-line-number=\"1533\"></td>\n        <td id=\"LC1533\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> memoizedProperty <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-smi\">memoizedProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1534\" class=\"blob-num js-line-number\" data-line-number=\"1534\"></td>\n        <td id=\"LC1534\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1535\" class=\"blob-num js-line-number\" data-line-number=\"1535\"></td>\n        <td id=\"LC1535\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">memoize</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">fn</span>, <span class=\"pl-smi\">nameTr</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1536\" class=\"blob-num js-line-number\" data-line-number=\"1536\"></td>\n        <td id=\"LC1536\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-en\">nameTr</span>(name), <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1537\" class=\"blob-num js-line-number\" data-line-number=\"1537\"></td>\n        <td id=\"LC1537\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-en\">fn</span>(name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L1538\" class=\"blob-num js-line-number\" data-line-number=\"1538\"></td>\n        <td id=\"LC1538\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1539\" class=\"blob-num js-line-number\" data-line-number=\"1539\"></td>\n        <td id=\"LC1539\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1540\" class=\"blob-num js-line-number\" data-line-number=\"1540\"></td>\n        <td id=\"LC1540\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1541\" class=\"blob-num js-line-number\" data-line-number=\"1541\"></td>\n        <td id=\"LC1541\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">Collection</span>(<span class=\"pl-smi\">iterable</span>, <span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">fn</span>, <span class=\"pl-smi\">nameTr</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1542\" class=\"blob-num js-line-number\" data-line-number=\"1542\"></td>\n        <td id=\"LC1542\" class=\"blob-code blob-code-inner js-file-line\">  nameTr <span class=\"pl-k\">=</span> nameTr <span class=\"pl-k\">||</span> <span class=\"pl-c1\">String</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1543\" class=\"blob-num js-line-number\" data-line-number=\"1543\"></td>\n        <td id=\"LC1543\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1544\" class=\"blob-num js-line-number\" data-line-number=\"1544\"></td>\n        <td id=\"LC1544\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1545\" class=\"blob-num js-line-number\" data-line-number=\"1545\"></td>\n        <td id=\"LC1545\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> id <span class=\"pl-k\">in</span> iterable) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1546\" class=\"blob-num js-line-number\" data-line-number=\"1546\"></td>\n        <td id=\"LC1546\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">iterable</span>.<span class=\"pl-en\">hasOwnProperty</span>(id)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1547\" class=\"blob-num js-line-number\" data-line-number=\"1547\"></td>\n        <td id=\"LC1547\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">memoize</span>.<span class=\"pl-c1\">call</span>(self, id, iterable[id], fn, nameTr);</td>\n      </tr>\n      <tr>\n        <td id=\"L1548\" class=\"blob-num js-line-number\" data-line-number=\"1548\"></td>\n        <td id=\"LC1548\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1549\" class=\"blob-num js-line-number\" data-line-number=\"1549\"></td>\n        <td id=\"LC1549\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1550\" class=\"blob-num js-line-number\" data-line-number=\"1550\"></td>\n        <td id=\"LC1550\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1551\" class=\"blob-num js-line-number\" data-line-number=\"1551\"></td>\n        <td id=\"LC1551\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1552\" class=\"blob-num js-line-number\" data-line-number=\"1552\"></td>\n        <td id=\"LC1552\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> Collection;</td>\n      </tr>\n      <tr>\n        <td id=\"L1553\" class=\"blob-num js-line-number\" data-line-number=\"1553\"></td>\n        <td id=\"LC1553\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1554\" class=\"blob-num js-line-number\" data-line-number=\"1554\"></td>\n        <td id=\"LC1554\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>}],<span class=\"pl-c1\">17</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L1555\" class=\"blob-num js-line-number\" data-line-number=\"1555\"></td>\n        <td id=\"LC1555\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Shape <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./shape<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1556\" class=\"blob-num js-line-number\" data-line-number=\"1556\"></td>\n        <td id=\"LC1556\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1557\" class=\"blob-num js-line-number\" data-line-number=\"1557\"></td>\n        <td id=\"LC1557\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1558\" class=\"blob-num js-line-number\" data-line-number=\"1558\"></td>\n        <td id=\"LC1558\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> property <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">property</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1559\" class=\"blob-num js-line-number\" data-line-number=\"1559\"></td>\n        <td id=\"LC1559\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> memoizedProperty <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">memoizedProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1560\" class=\"blob-num js-line-number\" data-line-number=\"1560\"></td>\n        <td id=\"LC1560\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1561\" class=\"blob-num js-line-number\" data-line-number=\"1561\"></td>\n        <td id=\"LC1561\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">Operation</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">operation</span>, <span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1562\" class=\"blob-num js-line-number\" data-line-number=\"1562\"></td>\n        <td id=\"LC1562\" class=\"blob-code blob-code-inner js-file-line\">  options <span class=\"pl-k\">=</span> options <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1563\" class=\"blob-num js-line-number\" data-line-number=\"1563\"></td>\n        <td id=\"LC1563\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1564\" class=\"blob-num js-line-number\" data-line-number=\"1564\"></td>\n        <td id=\"LC1564\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>name<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">operation</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> name);</td>\n      </tr>\n      <tr>\n        <td id=\"L1565\" class=\"blob-num js-line-number\" data-line-number=\"1565\"></td>\n        <td id=\"LC1565\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>api<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">api</span>, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1566\" class=\"blob-num js-line-number\" data-line-number=\"1566\"></td>\n        <td id=\"LC1566\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1567\" class=\"blob-num js-line-number\" data-line-number=\"1567\"></td>\n        <td id=\"LC1567\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">http</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">http</span> <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1568\" class=\"blob-num js-line-number\" data-line-number=\"1568\"></td>\n        <td id=\"LC1568\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpMethod<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">http</span>.<span class=\"pl-c1\">method</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>POST<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1569\" class=\"blob-num js-line-number\" data-line-number=\"1569\"></td>\n        <td id=\"LC1569\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpPath<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">http</span>.<span class=\"pl-smi\">requestUri</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1570\" class=\"blob-num js-line-number\" data-line-number=\"1570\"></td>\n        <td id=\"LC1570\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1571\" class=\"blob-num js-line-number\" data-line-number=\"1571\"></td>\n        <td id=\"LC1571\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>input<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1572\" class=\"blob-num js-line-number\" data-line-number=\"1572\"></td>\n        <td id=\"LC1572\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">operation</span>.<span class=\"pl-c1\">input</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1573\" class=\"blob-num js-line-number\" data-line-number=\"1573\"></td>\n        <td id=\"LC1573\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Shape.create</span>({type<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span>}, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1574\" class=\"blob-num js-line-number\" data-line-number=\"1574\"></td>\n        <td id=\"LC1574\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1575\" class=\"blob-num js-line-number\" data-line-number=\"1575\"></td>\n        <td id=\"LC1575\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>(<span class=\"pl-smi\">operation</span>.<span class=\"pl-c1\">input</span>, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1576\" class=\"blob-num js-line-number\" data-line-number=\"1576\"></td>\n        <td id=\"LC1576\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1577\" class=\"blob-num js-line-number\" data-line-number=\"1577\"></td>\n        <td id=\"LC1577\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1578\" class=\"blob-num js-line-number\" data-line-number=\"1578\"></td>\n        <td id=\"LC1578\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>output<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1579\" class=\"blob-num js-line-number\" data-line-number=\"1579\"></td>\n        <td id=\"LC1579\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">output</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1580\" class=\"blob-num js-line-number\" data-line-number=\"1580\"></td>\n        <td id=\"LC1580\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Shape.create</span>({type<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span>}, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1581\" class=\"blob-num js-line-number\" data-line-number=\"1581\"></td>\n        <td id=\"LC1581\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1582\" class=\"blob-num js-line-number\" data-line-number=\"1582\"></td>\n        <td id=\"LC1582\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>(<span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">output</span>, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1583\" class=\"blob-num js-line-number\" data-line-number=\"1583\"></td>\n        <td id=\"LC1583\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1584\" class=\"blob-num js-line-number\" data-line-number=\"1584\"></td>\n        <td id=\"LC1584\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1585\" class=\"blob-num js-line-number\" data-line-number=\"1585\"></td>\n        <td id=\"LC1585\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>errors<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1586\" class=\"blob-num js-line-number\" data-line-number=\"1586\"></td>\n        <td id=\"LC1586\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> list <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L1587\" class=\"blob-num js-line-number\" data-line-number=\"1587\"></td>\n        <td id=\"LC1587\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">errors</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1588\" class=\"blob-num js-line-number\" data-line-number=\"1588\"></td>\n        <td id=\"LC1588\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1589\" class=\"blob-num js-line-number\" data-line-number=\"1589\"></td>\n        <td id=\"LC1589\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">errors</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1590\" class=\"blob-num js-line-number\" data-line-number=\"1590\"></td>\n        <td id=\"LC1590\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">list</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>(<span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">errors</span>[i], options));</td>\n      </tr>\n      <tr>\n        <td id=\"L1591\" class=\"blob-num js-line-number\" data-line-number=\"1591\"></td>\n        <td id=\"LC1591\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1592\" class=\"blob-num js-line-number\" data-line-number=\"1592\"></td>\n        <td id=\"LC1592\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1593\" class=\"blob-num js-line-number\" data-line-number=\"1593\"></td>\n        <td id=\"LC1593\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> list;</td>\n      </tr>\n      <tr>\n        <td id=\"L1594\" class=\"blob-num js-line-number\" data-line-number=\"1594\"></td>\n        <td id=\"LC1594\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1595\" class=\"blob-num js-line-number\" data-line-number=\"1595\"></td>\n        <td id=\"LC1595\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1596\" class=\"blob-num js-line-number\" data-line-number=\"1596\"></td>\n        <td id=\"LC1596\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>paginator<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1597\" class=\"blob-num js-line-number\" data-line-number=\"1597\"></td>\n        <td id=\"LC1597\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">paginators</span>[name];</td>\n      </tr>\n      <tr>\n        <td id=\"L1598\" class=\"blob-num js-line-number\" data-line-number=\"1598\"></td>\n        <td id=\"LC1598\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L1599\" class=\"blob-num js-line-number\" data-line-number=\"1599\"></td>\n        <td id=\"LC1599\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1600\" class=\"blob-num js-line-number\" data-line-number=\"1600\"></td>\n        <td id=\"LC1600\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">documentation</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1601\" class=\"blob-num js-line-number\" data-line-number=\"1601\"></td>\n        <td id=\"LC1601\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>documentation<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">documentation</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1602\" class=\"blob-num js-line-number\" data-line-number=\"1602\"></td>\n        <td id=\"LC1602\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>documentationUrl<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">documentationUrl</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1603\" class=\"blob-num js-line-number\" data-line-number=\"1603\"></td>\n        <td id=\"LC1603\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1604\" class=\"blob-num js-line-number\" data-line-number=\"1604\"></td>\n        <td id=\"LC1604\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1605\" class=\"blob-num js-line-number\" data-line-number=\"1605\"></td>\n        <td id=\"LC1605\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1606\" class=\"blob-num js-line-number\" data-line-number=\"1606\"></td>\n        <td id=\"LC1606\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> Operation;</td>\n      </tr>\n      <tr>\n        <td id=\"L1607\" class=\"blob-num js-line-number\" data-line-number=\"1607\"></td>\n        <td id=\"LC1607\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1608\" class=\"blob-num js-line-number\" data-line-number=\"1608\"></td>\n        <td id=\"LC1608\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./shape<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">20</span>}],<span class=\"pl-c1\">18</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L1609\" class=\"blob-num js-line-number\" data-line-number=\"1609\"></td>\n        <td id=\"LC1609\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> property <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-smi\">property</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1610\" class=\"blob-num js-line-number\" data-line-number=\"1610\"></td>\n        <td id=\"LC1610\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1611\" class=\"blob-num js-line-number\" data-line-number=\"1611\"></td>\n        <td id=\"LC1611\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">Paginator</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">paginator</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1612\" class=\"blob-num js-line-number\" data-line-number=\"1612\"></td>\n        <td id=\"LC1612\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>inputToken<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">paginator</span>.<span class=\"pl-smi\">input_token</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1613\" class=\"blob-num js-line-number\" data-line-number=\"1613\"></td>\n        <td id=\"LC1613\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>limitKey<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">paginator</span>.<span class=\"pl-smi\">limit_key</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1614\" class=\"blob-num js-line-number\" data-line-number=\"1614\"></td>\n        <td id=\"LC1614\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>moreResults<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">paginator</span>.<span class=\"pl-smi\">more_results</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1615\" class=\"blob-num js-line-number\" data-line-number=\"1615\"></td>\n        <td id=\"LC1615\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>outputToken<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">paginator</span>.<span class=\"pl-smi\">output_token</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1616\" class=\"blob-num js-line-number\" data-line-number=\"1616\"></td>\n        <td id=\"LC1616\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>resultKey<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">paginator</span>.<span class=\"pl-smi\">result_key</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1617\" class=\"blob-num js-line-number\" data-line-number=\"1617\"></td>\n        <td id=\"LC1617\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1618\" class=\"blob-num js-line-number\" data-line-number=\"1618\"></td>\n        <td id=\"LC1618\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1619\" class=\"blob-num js-line-number\" data-line-number=\"1619\"></td>\n        <td id=\"LC1619\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> Paginator;</td>\n      </tr>\n      <tr>\n        <td id=\"L1620\" class=\"blob-num js-line-number\" data-line-number=\"1620\"></td>\n        <td id=\"LC1620\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1621\" class=\"blob-num js-line-number\" data-line-number=\"1621\"></td>\n        <td id=\"LC1621\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>}],<span class=\"pl-c1\">19</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L1622\" class=\"blob-num js-line-number\" data-line-number=\"1622\"></td>\n        <td id=\"LC1622\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1623\" class=\"blob-num js-line-number\" data-line-number=\"1623\"></td>\n        <td id=\"LC1623\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> property <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">property</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1624\" class=\"blob-num js-line-number\" data-line-number=\"1624\"></td>\n        <td id=\"LC1624\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1625\" class=\"blob-num js-line-number\" data-line-number=\"1625\"></td>\n        <td id=\"LC1625\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">ResourceWaiter</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">waiter</span>, <span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1626\" class=\"blob-num js-line-number\" data-line-number=\"1626\"></td>\n        <td id=\"LC1626\" class=\"blob-code blob-code-inner js-file-line\">  options <span class=\"pl-k\">=</span> options <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1627\" class=\"blob-num js-line-number\" data-line-number=\"1627\"></td>\n        <td id=\"LC1627\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1628\" class=\"blob-num js-line-number\" data-line-number=\"1628\"></td>\n        <td id=\"LC1628\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">function</span> <span class=\"pl-en\">InnerResourceWaiter</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1629\" class=\"blob-num js-line-number\" data-line-number=\"1629\"></td>\n        <td id=\"LC1629\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>name<span class=\"pl-pds\">&#39;</span></span>, name);</td>\n      </tr>\n      <tr>\n        <td id=\"L1630\" class=\"blob-num js-line-number\" data-line-number=\"1630\"></td>\n        <td id=\"LC1630\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>api<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">api</span>, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1631\" class=\"blob-num js-line-number\" data-line-number=\"1631\"></td>\n        <td id=\"LC1631\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1632\" class=\"blob-num js-line-number\" data-line-number=\"1632\"></td>\n        <td id=\"LC1632\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">waiter</span>.<span class=\"pl-smi\">operation</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1633\" class=\"blob-num js-line-number\" data-line-number=\"1633\"></td>\n        <td id=\"LC1633\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>operation<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">string</span>.<span class=\"pl-en\">lowerFirst</span>(<span class=\"pl-smi\">waiter</span>.<span class=\"pl-smi\">operation</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L1634\" class=\"blob-num js-line-number\" data-line-number=\"1634\"></td>\n        <td id=\"LC1634\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1635\" class=\"blob-num js-line-number\" data-line-number=\"1635\"></td>\n        <td id=\"LC1635\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1636\" class=\"blob-num js-line-number\" data-line-number=\"1636\"></td>\n        <td id=\"LC1636\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>, map <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1637\" class=\"blob-num js-line-number\" data-line-number=\"1637\"></td>\n        <td id=\"LC1637\" class=\"blob-code blob-code-inner js-file-line\">      ignoreErrors<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ignore_errors<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1638\" class=\"blob-num js-line-number\" data-line-number=\"1638\"></td>\n        <td id=\"LC1638\" class=\"blob-code blob-code-inner js-file-line\">      successType<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>success_type<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1639\" class=\"blob-num js-line-number\" data-line-number=\"1639\"></td>\n        <td id=\"LC1639\" class=\"blob-code blob-code-inner js-file-line\">      successValue<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>success_value<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1640\" class=\"blob-num js-line-number\" data-line-number=\"1640\"></td>\n        <td id=\"LC1640\" class=\"blob-code blob-code-inner js-file-line\">      successPath<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>success_path<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1641\" class=\"blob-num js-line-number\" data-line-number=\"1641\"></td>\n        <td id=\"LC1641\" class=\"blob-code blob-code-inner js-file-line\">      acceptorType<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>acceptor_type<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1642\" class=\"blob-num js-line-number\" data-line-number=\"1642\"></td>\n        <td id=\"LC1642\" class=\"blob-code blob-code-inner js-file-line\">      acceptorValue<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>acceptor_value<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1643\" class=\"blob-num js-line-number\" data-line-number=\"1643\"></td>\n        <td id=\"LC1643\" class=\"blob-code blob-code-inner js-file-line\">      acceptorPath<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>acceptor_path<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1644\" class=\"blob-num js-line-number\" data-line-number=\"1644\"></td>\n        <td id=\"LC1644\" class=\"blob-code blob-code-inner js-file-line\">      failureType<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>failure_type<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1645\" class=\"blob-num js-line-number\" data-line-number=\"1645\"></td>\n        <td id=\"LC1645\" class=\"blob-code blob-code-inner js-file-line\">      failureValue<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>failure_value<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1646\" class=\"blob-num js-line-number\" data-line-number=\"1646\"></td>\n        <td id=\"LC1646\" class=\"blob-code blob-code-inner js-file-line\">      failurePath<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>success_path<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1647\" class=\"blob-num js-line-number\" data-line-number=\"1647\"></td>\n        <td id=\"LC1647\" class=\"blob-code blob-code-inner js-file-line\">      interval<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>interval<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1648\" class=\"blob-num js-line-number\" data-line-number=\"1648\"></td>\n        <td id=\"LC1648\" class=\"blob-code blob-code-inner js-file-line\">      maxAttempts<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>max_attempts<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L1649\" class=\"blob-num js-line-number\" data-line-number=\"1649\"></td>\n        <td id=\"LC1649\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L1650\" class=\"blob-num js-line-number\" data-line-number=\"1650\"></td>\n        <td id=\"LC1650\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(map).<span class=\"pl-en\">forEach</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1651\" class=\"blob-num js-line-number\" data-line-number=\"1651\"></td>\n        <td id=\"LC1651\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> waiter[map[key]];</td>\n      </tr>\n      <tr>\n        <td id=\"L1652\" class=\"blob-num js-line-number\" data-line-number=\"1652\"></td>\n        <td id=\"LC1652\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (value) <span class=\"pl-en\">property</span>(self, key, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L1653\" class=\"blob-num js-line-number\" data-line-number=\"1653\"></td>\n        <td id=\"LC1653\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1654\" class=\"blob-num js-line-number\" data-line-number=\"1654\"></td>\n        <td id=\"LC1654\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1655\" class=\"blob-num js-line-number\" data-line-number=\"1655\"></td>\n        <td id=\"LC1655\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1656\" class=\"blob-num js-line-number\" data-line-number=\"1656\"></td>\n        <td id=\"LC1656\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">api</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1657\" class=\"blob-num js-line-number\" data-line-number=\"1657\"></td>\n        <td id=\"LC1657\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> proto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1658\" class=\"blob-num js-line-number\" data-line-number=\"1658\"></td>\n        <td id=\"LC1658\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (waiter[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extends<span class=\"pl-pds\">&#39;</span></span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1659\" class=\"blob-num js-line-number\" data-line-number=\"1659\"></td>\n        <td id=\"LC1659\" class=\"blob-code blob-code-inner js-file-line\">      proto <span class=\"pl-k\">=</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">waiters</span>[waiter[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extends<span class=\"pl-pds\">&#39;</span></span>]];</td>\n      </tr>\n      <tr>\n        <td id=\"L1660\" class=\"blob-num js-line-number\" data-line-number=\"1660\"></td>\n        <td id=\"LC1660\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>__default__<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1661\" class=\"blob-num js-line-number\" data-line-number=\"1661\"></td>\n        <td id=\"LC1661\" class=\"blob-code blob-code-inner js-file-line\">      proto <span class=\"pl-k\">=</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">waiters</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>__default__<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L1662\" class=\"blob-num js-line-number\" data-line-number=\"1662\"></td>\n        <td id=\"LC1662\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1663\" class=\"blob-num js-line-number\" data-line-number=\"1663\"></td>\n        <td id=\"LC1663\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1664\" class=\"blob-num js-line-number\" data-line-number=\"1664\"></td>\n        <td id=\"LC1664\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (proto) <span class=\"pl-smi\">InnerResourceWaiter</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> proto;</td>\n      </tr>\n      <tr>\n        <td id=\"L1665\" class=\"blob-num js-line-number\" data-line-number=\"1665\"></td>\n        <td id=\"LC1665\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1666\" class=\"blob-num js-line-number\" data-line-number=\"1666\"></td>\n        <td id=\"LC1666\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1667\" class=\"blob-num js-line-number\" data-line-number=\"1667\"></td>\n        <td id=\"LC1667\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">InnerResourceWaiter</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L1668\" class=\"blob-num js-line-number\" data-line-number=\"1668\"></td>\n        <td id=\"LC1668\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1669\" class=\"blob-num js-line-number\" data-line-number=\"1669\"></td>\n        <td id=\"LC1669\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1670\" class=\"blob-num js-line-number\" data-line-number=\"1670\"></td>\n        <td id=\"LC1670\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> ResourceWaiter;</td>\n      </tr>\n      <tr>\n        <td id=\"L1671\" class=\"blob-num js-line-number\" data-line-number=\"1671\"></td>\n        <td id=\"LC1671\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1672\" class=\"blob-num js-line-number\" data-line-number=\"1672\"></td>\n        <td id=\"LC1672\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>}],<span class=\"pl-c1\">20</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L1673\" class=\"blob-num js-line-number\" data-line-number=\"1673\"></td>\n        <td id=\"LC1673\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Collection <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./collection<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1674\" class=\"blob-num js-line-number\" data-line-number=\"1674\"></td>\n        <td id=\"LC1674\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1675\" class=\"blob-num js-line-number\" data-line-number=\"1675\"></td>\n        <td id=\"LC1675\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1676\" class=\"blob-num js-line-number\" data-line-number=\"1676\"></td>\n        <td id=\"LC1676\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1677\" class=\"blob-num js-line-number\" data-line-number=\"1677\"></td>\n        <td id=\"LC1677\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">property</span>(<span class=\"pl-smi\">obj</span>, <span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1678\" class=\"blob-num js-line-number\" data-line-number=\"1678\"></td>\n        <td id=\"LC1678\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1679\" class=\"blob-num js-line-number\" data-line-number=\"1679\"></td>\n        <td id=\"LC1679\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">property</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1680\" class=\"blob-num js-line-number\" data-line-number=\"1680\"></td>\n        <td id=\"LC1680\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1681\" class=\"blob-num js-line-number\" data-line-number=\"1681\"></td>\n        <td id=\"LC1681\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1682\" class=\"blob-num js-line-number\" data-line-number=\"1682\"></td>\n        <td id=\"LC1682\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1683\" class=\"blob-num js-line-number\" data-line-number=\"1683\"></td>\n        <td id=\"LC1683\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-smi\">obj</span>, <span class=\"pl-smi\">name</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1684\" class=\"blob-num js-line-number\" data-line-number=\"1684\"></td>\n        <td id=\"LC1684\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">obj</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">prototype</span>[name]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1685\" class=\"blob-num js-line-number\" data-line-number=\"1685\"></td>\n        <td id=\"LC1685\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">memoizedProperty</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1686\" class=\"blob-num js-line-number\" data-line-number=\"1686\"></td>\n        <td id=\"LC1686\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1687\" class=\"blob-num js-line-number\" data-line-number=\"1687\"></td>\n        <td id=\"LC1687\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1688\" class=\"blob-num js-line-number\" data-line-number=\"1688\"></td>\n        <td id=\"LC1688\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1689\" class=\"blob-num js-line-number\" data-line-number=\"1689\"></td>\n        <td id=\"LC1689\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">Shape</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">memberName</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1690\" class=\"blob-num js-line-number\" data-line-number=\"1690\"></td>\n        <td id=\"LC1690\" class=\"blob-code blob-code-inner js-file-line\">  options <span class=\"pl-k\">=</span> options <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1691\" class=\"blob-num js-line-number\" data-line-number=\"1691\"></td>\n        <td id=\"LC1691\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1692\" class=\"blob-num js-line-number\" data-line-number=\"1692\"></td>\n        <td id=\"LC1692\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>shape<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">shape</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1693\" class=\"blob-num js-line-number\" data-line-number=\"1693\"></td>\n        <td id=\"LC1693\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>api<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">api</span>, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1694\" class=\"blob-num js-line-number\" data-line-number=\"1694\"></td>\n        <td id=\"LC1694\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>type<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1695\" class=\"blob-num js-line-number\" data-line-number=\"1695\"></td>\n        <td id=\"LC1695\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>enum<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">enum</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1696\" class=\"blob-num js-line-number\" data-line-number=\"1696\"></td>\n        <td id=\"LC1696\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>min<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">min</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1697\" class=\"blob-num js-line-number\" data-line-number=\"1697\"></td>\n        <td id=\"LC1697\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>max<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">max</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1698\" class=\"blob-num js-line-number\" data-line-number=\"1698\"></td>\n        <td id=\"LC1698\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>pattern<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">pattern</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1699\" class=\"blob-num js-line-number\" data-line-number=\"1699\"></td>\n        <td id=\"LC1699\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>location<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">||</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>body<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1700\" class=\"blob-num js-line-number\" data-line-number=\"1700\"></td>\n        <td id=\"LC1700\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>name<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlName</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">queryName</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1701\" class=\"blob-num js-line-number\" data-line-number=\"1701\"></td>\n        <td id=\"LC1701\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">locationName</span> <span class=\"pl-k\">||</span> memberName);</td>\n      </tr>\n      <tr>\n        <td id=\"L1702\" class=\"blob-num js-line-number\" data-line-number=\"1702\"></td>\n        <td id=\"LC1702\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>isStreaming<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">streaming</span> <span class=\"pl-k\">||</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">isStreaming</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1703\" class=\"blob-num js-line-number\" data-line-number=\"1703\"></td>\n        <td id=\"LC1703\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>isComposite<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">isComposite</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1704\" class=\"blob-num js-line-number\" data-line-number=\"1704\"></td>\n        <td id=\"LC1704\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>isShape<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">true</span>, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1705\" class=\"blob-num js-line-number\" data-line-number=\"1705\"></td>\n        <td id=\"LC1705\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>isQueryName<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">queryName</span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">true</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1706\" class=\"blob-num js-line-number\" data-line-number=\"1706\"></td>\n        <td id=\"LC1706\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>isLocationName<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">locationName</span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">true</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1707\" class=\"blob-num js-line-number\" data-line-number=\"1707\"></td>\n        <td id=\"LC1707\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1708\" class=\"blob-num js-line-number\" data-line-number=\"1708\"></td>\n        <td id=\"LC1708\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">documentation</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1709\" class=\"blob-num js-line-number\" data-line-number=\"1709\"></td>\n        <td id=\"LC1709\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>documentation<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">documentation</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1710\" class=\"blob-num js-line-number\" data-line-number=\"1710\"></td>\n        <td id=\"LC1710\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>documentationUrl<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">documentationUrl</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1711\" class=\"blob-num js-line-number\" data-line-number=\"1711\"></td>\n        <td id=\"LC1711\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1712\" class=\"blob-num js-line-number\" data-line-number=\"1712\"></td>\n        <td id=\"LC1712\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1713\" class=\"blob-num js-line-number\" data-line-number=\"1713\"></td>\n        <td id=\"LC1713\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlAttribute</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1714\" class=\"blob-num js-line-number\" data-line-number=\"1714\"></td>\n        <td id=\"LC1714\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>isXmlAttribute<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlAttribute</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1715\" class=\"blob-num js-line-number\" data-line-number=\"1715\"></td>\n        <td id=\"LC1715\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1716\" class=\"blob-num js-line-number\" data-line-number=\"1716\"></td>\n        <td id=\"LC1716\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1717\" class=\"blob-num js-line-number\" data-line-number=\"1717\"></td>\n        <td id=\"LC1717\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>defaultValue<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">null</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1718\" class=\"blob-num js-line-number\" data-line-number=\"1718\"></td>\n        <td id=\"LC1718\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">toWireFormat</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1719\" class=\"blob-num js-line-number\" data-line-number=\"1719\"></td>\n        <td id=\"LC1719\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1720\" class=\"blob-num js-line-number\" data-line-number=\"1720\"></td>\n        <td id=\"LC1720\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L1721\" class=\"blob-num js-line-number\" data-line-number=\"1721\"></td>\n        <td id=\"LC1721\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L1722\" class=\"blob-num js-line-number\" data-line-number=\"1722\"></td>\n        <td id=\"LC1722\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">toType</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) { <span class=\"pl-k\">return</span> value; };</td>\n      </tr>\n      <tr>\n        <td id=\"L1723\" class=\"blob-num js-line-number\" data-line-number=\"1723\"></td>\n        <td id=\"LC1723\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1724\" class=\"blob-num js-line-number\" data-line-number=\"1724\"></td>\n        <td id=\"LC1724\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1725\" class=\"blob-num js-line-number\" data-line-number=\"1725\"></td>\n        <td id=\"LC1725\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1726\" class=\"blob-num js-line-number\" data-line-number=\"1726\"></td>\n        <td id=\"LC1726\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Shape</span>.<span class=\"pl-smi\">normalizedTypes</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1727\" class=\"blob-num js-line-number\" data-line-number=\"1727\"></td>\n        <td id=\"LC1727\" class=\"blob-code blob-code-inner js-file-line\">  character<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1728\" class=\"blob-num js-line-number\" data-line-number=\"1728\"></td>\n        <td id=\"LC1728\" class=\"blob-code blob-code-inner js-file-line\">  double<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>float<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1729\" class=\"blob-num js-line-number\" data-line-number=\"1729\"></td>\n        <td id=\"LC1729\" class=\"blob-code blob-code-inner js-file-line\">  long<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>integer<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1730\" class=\"blob-num js-line-number\" data-line-number=\"1730\"></td>\n        <td id=\"LC1730\" class=\"blob-code blob-code-inner js-file-line\">  short<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>integer<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1731\" class=\"blob-num js-line-number\" data-line-number=\"1731\"></td>\n        <td id=\"LC1731\" class=\"blob-code blob-code-inner js-file-line\">  biginteger<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>integer<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1732\" class=\"blob-num js-line-number\" data-line-number=\"1732\"></td>\n        <td id=\"LC1732\" class=\"blob-code blob-code-inner js-file-line\">  bigdecimal<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>float<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L1733\" class=\"blob-num js-line-number\" data-line-number=\"1733\"></td>\n        <td id=\"LC1733\" class=\"blob-code blob-code-inner js-file-line\">  blob<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>binary<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L1734\" class=\"blob-num js-line-number\" data-line-number=\"1734\"></td>\n        <td id=\"LC1734\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L1735\" class=\"blob-num js-line-number\" data-line-number=\"1735\"></td>\n        <td id=\"LC1735\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1736\" class=\"blob-num js-line-number\" data-line-number=\"1736\"></td>\n        <td id=\"LC1736\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1737\" class=\"blob-num js-line-number\" data-line-number=\"1737\"></td>\n        <td id=\"LC1737\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Shape</span>.<span class=\"pl-smi\">types</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1738\" class=\"blob-num js-line-number\" data-line-number=\"1738\"></td>\n        <td id=\"LC1738\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> StructureShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L1739\" class=\"blob-num js-line-number\" data-line-number=\"1739\"></td>\n        <td id=\"LC1739\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> ListShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L1740\" class=\"blob-num js-line-number\" data-line-number=\"1740\"></td>\n        <td id=\"LC1740\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> MapShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L1741\" class=\"blob-num js-line-number\" data-line-number=\"1741\"></td>\n        <td id=\"LC1741\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> BooleanShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L1742\" class=\"blob-num js-line-number\" data-line-number=\"1742\"></td>\n        <td id=\"LC1742\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>timestamp<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> TimestampShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L1743\" class=\"blob-num js-line-number\" data-line-number=\"1743\"></td>\n        <td id=\"LC1743\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>float<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> FloatShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L1744\" class=\"blob-num js-line-number\" data-line-number=\"1744\"></td>\n        <td id=\"LC1744\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>integer<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> IntegerShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L1745\" class=\"blob-num js-line-number\" data-line-number=\"1745\"></td>\n        <td id=\"LC1745\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> StringShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L1746\" class=\"blob-num js-line-number\" data-line-number=\"1746\"></td>\n        <td id=\"LC1746\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> Base64Shape,</td>\n      </tr>\n      <tr>\n        <td id=\"L1747\" class=\"blob-num js-line-number\" data-line-number=\"1747\"></td>\n        <td id=\"LC1747\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>binary<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> BinaryShape</td>\n      </tr>\n      <tr>\n        <td id=\"L1748\" class=\"blob-num js-line-number\" data-line-number=\"1748\"></td>\n        <td id=\"LC1748\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L1749\" class=\"blob-num js-line-number\" data-line-number=\"1749\"></td>\n        <td id=\"LC1749\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1750\" class=\"blob-num js-line-number\" data-line-number=\"1750\"></td>\n        <td id=\"LC1750\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">resolve</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">resolve</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1751\" class=\"blob-num js-line-number\" data-line-number=\"1751\"></td>\n        <td id=\"LC1751\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1752\" class=\"blob-num js-line-number\" data-line-number=\"1752\"></td>\n        <td id=\"LC1752\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> refShape <span class=\"pl-k\">=</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">shapes</span>[<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">shape</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L1753\" class=\"blob-num js-line-number\" data-line-number=\"1753\"></td>\n        <td id=\"LC1753\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>refShape) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1754\" class=\"blob-num js-line-number\" data-line-number=\"1754\"></td>\n        <td id=\"LC1754\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Cannot find shape reference: <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">shape</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1755\" class=\"blob-num js-line-number\" data-line-number=\"1755\"></td>\n        <td id=\"LC1755\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1756\" class=\"blob-num js-line-number\" data-line-number=\"1756\"></td>\n        <td id=\"LC1756\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1757\" class=\"blob-num js-line-number\" data-line-number=\"1757\"></td>\n        <td id=\"LC1757\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> refShape;</td>\n      </tr>\n      <tr>\n        <td id=\"L1758\" class=\"blob-num js-line-number\" data-line-number=\"1758\"></td>\n        <td id=\"LC1758\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1759\" class=\"blob-num js-line-number\" data-line-number=\"1759\"></td>\n        <td id=\"LC1759\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1760\" class=\"blob-num js-line-number\" data-line-number=\"1760\"></td>\n        <td id=\"LC1760\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1761\" class=\"blob-num js-line-number\" data-line-number=\"1761\"></td>\n        <td id=\"LC1761\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L1762\" class=\"blob-num js-line-number\" data-line-number=\"1762\"></td>\n        <td id=\"LC1762\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1763\" class=\"blob-num js-line-number\" data-line-number=\"1763\"></td>\n        <td id=\"LC1763\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">memberName</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1764\" class=\"blob-num js-line-number\" data-line-number=\"1764\"></td>\n        <td id=\"LC1764\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">isShape</span>) <span class=\"pl-k\">return</span> shape;</td>\n      </tr>\n      <tr>\n        <td id=\"L1765\" class=\"blob-num js-line-number\" data-line-number=\"1765\"></td>\n        <td id=\"LC1765\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1766\" class=\"blob-num js-line-number\" data-line-number=\"1766\"></td>\n        <td id=\"LC1766\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> refShape <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">resolve</span>(shape, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1767\" class=\"blob-num js-line-number\" data-line-number=\"1767\"></td>\n        <td id=\"LC1767\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (refShape) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1768\" class=\"blob-num js-line-number\" data-line-number=\"1768\"></td>\n        <td id=\"LC1768\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> filteredKeys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L1769\" class=\"blob-num js-line-number\" data-line-number=\"1769\"></td>\n        <td id=\"LC1769\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">documentation</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1770\" class=\"blob-num js-line-number\" data-line-number=\"1770\"></td>\n        <td id=\"LC1770\" class=\"blob-code blob-code-inner js-file-line\">      filteredKeys <span class=\"pl-k\">=</span> <span class=\"pl-smi\">filteredKeys</span>.<span class=\"pl-en\">filter</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1771\" class=\"blob-num js-line-number\" data-line-number=\"1771\"></td>\n        <td id=\"LC1771\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>documentation<span class=\"pl-pds\">/</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1772\" class=\"blob-num js-line-number\" data-line-number=\"1772\"></td>\n        <td id=\"LC1772\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L1773\" class=\"blob-num js-line-number\" data-line-number=\"1773\"></td>\n        <td id=\"LC1773\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1774\" class=\"blob-num js-line-number\" data-line-number=\"1774\"></td>\n        <td id=\"LC1774\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (filteredKeys <span class=\"pl-k\">===</span> [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>shape<span class=\"pl-pds\">&#39;</span></span>]) { <span class=\"pl-c\">// no inline customizations</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1775\" class=\"blob-num js-line-number\" data-line-number=\"1775\"></td>\n        <td id=\"LC1775\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> refShape;</td>\n      </tr>\n      <tr>\n        <td id=\"L1776\" class=\"blob-num js-line-number\" data-line-number=\"1776\"></td>\n        <td id=\"LC1776\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1777\" class=\"blob-num js-line-number\" data-line-number=\"1777\"></td>\n        <td id=\"LC1777\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1778\" class=\"blob-num js-line-number\" data-line-number=\"1778\"></td>\n        <td id=\"LC1778\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> <span class=\"pl-en\">InlineShape</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1779\" class=\"blob-num js-line-number\" data-line-number=\"1779\"></td>\n        <td id=\"LC1779\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">refShape</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, shape, options, memberName);</td>\n      </tr>\n      <tr>\n        <td id=\"L1780\" class=\"blob-num js-line-number\" data-line-number=\"1780\"></td>\n        <td id=\"LC1780\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L1781\" class=\"blob-num js-line-number\" data-line-number=\"1781\"></td>\n        <td id=\"LC1781\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">InlineShape</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> refShape;</td>\n      </tr>\n      <tr>\n        <td id=\"L1782\" class=\"blob-num js-line-number\" data-line-number=\"1782\"></td>\n        <td id=\"LC1782\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">InlineShape</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L1783\" class=\"blob-num js-line-number\" data-line-number=\"1783\"></td>\n        <td id=\"LC1783\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1784\" class=\"blob-num js-line-number\" data-line-number=\"1784\"></td>\n        <td id=\"LC1784\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1785\" class=\"blob-num js-line-number\" data-line-number=\"1785\"></td>\n        <td id=\"LC1785\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>) <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1786\" class=\"blob-num js-line-number\" data-line-number=\"1786\"></td>\n        <td id=\"LC1786\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>) <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1787\" class=\"blob-num js-line-number\" data-line-number=\"1787\"></td>\n        <td id=\"LC1787\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">key</span>) <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1788\" class=\"blob-num js-line-number\" data-line-number=\"1788\"></td>\n        <td id=\"LC1788\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">else</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1789\" class=\"blob-num js-line-number\" data-line-number=\"1789\"></td>\n        <td id=\"LC1789\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1790\" class=\"blob-num js-line-number\" data-line-number=\"1790\"></td>\n        <td id=\"LC1790\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1791\" class=\"blob-num js-line-number\" data-line-number=\"1791\"></td>\n        <td id=\"LC1791\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> origType <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1792\" class=\"blob-num js-line-number\" data-line-number=\"1792\"></td>\n        <td id=\"LC1792\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">Shape</span>.<span class=\"pl-smi\">normalizedTypes</span>[<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1793\" class=\"blob-num js-line-number\" data-line-number=\"1793\"></td>\n        <td id=\"LC1793\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Shape</span>.<span class=\"pl-smi\">normalizedTypes</span>[<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L1794\" class=\"blob-num js-line-number\" data-line-number=\"1794\"></td>\n        <td id=\"LC1794\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1795\" class=\"blob-num js-line-number\" data-line-number=\"1795\"></td>\n        <td id=\"LC1795\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1796\" class=\"blob-num js-line-number\" data-line-number=\"1796\"></td>\n        <td id=\"LC1796\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">Shape</span>.<span class=\"pl-smi\">types</span>[<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1797\" class=\"blob-num js-line-number\" data-line-number=\"1797\"></td>\n        <td id=\"LC1797\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Shape.types</span>[<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>](shape, options, memberName);</td>\n      </tr>\n      <tr>\n        <td id=\"L1798\" class=\"blob-num js-line-number\" data-line-number=\"1798\"></td>\n        <td id=\"LC1798\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1799\" class=\"blob-num js-line-number\" data-line-number=\"1799\"></td>\n        <td id=\"LC1799\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Unrecognized shape type: <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> origType);</td>\n      </tr>\n      <tr>\n        <td id=\"L1800\" class=\"blob-num js-line-number\" data-line-number=\"1800\"></td>\n        <td id=\"LC1800\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1801\" class=\"blob-num js-line-number\" data-line-number=\"1801\"></td>\n        <td id=\"LC1801\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1802\" class=\"blob-num js-line-number\" data-line-number=\"1802\"></td>\n        <td id=\"LC1802\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L1803\" class=\"blob-num js-line-number\" data-line-number=\"1803\"></td>\n        <td id=\"LC1803\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1804\" class=\"blob-num js-line-number\" data-line-number=\"1804\"></td>\n        <td id=\"LC1804\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">CompositeShape</span>(<span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1805\" class=\"blob-num js-line-number\" data-line-number=\"1805\"></td>\n        <td id=\"LC1805\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Shape</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1806\" class=\"blob-num js-line-number\" data-line-number=\"1806\"></td>\n        <td id=\"LC1806\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>isComposite<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1807\" class=\"blob-num js-line-number\" data-line-number=\"1807\"></td>\n        <td id=\"LC1807\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1808\" class=\"blob-num js-line-number\" data-line-number=\"1808\"></td>\n        <td id=\"LC1808\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">flattened</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1809\" class=\"blob-num js-line-number\" data-line-number=\"1809\"></td>\n        <td id=\"LC1809\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>flattened<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">flattened</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1810\" class=\"blob-num js-line-number\" data-line-number=\"1810\"></td>\n        <td id=\"LC1810\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1811\" class=\"blob-num js-line-number\" data-line-number=\"1811\"></td>\n        <td id=\"LC1811\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1812\" class=\"blob-num js-line-number\" data-line-number=\"1812\"></td>\n        <td id=\"LC1812\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1813\" class=\"blob-num js-line-number\" data-line-number=\"1813\"></td>\n        <td id=\"LC1813\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">StructureShape</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1814\" class=\"blob-num js-line-number\" data-line-number=\"1814\"></td>\n        <td id=\"LC1814\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> requiredMap <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>, firstInit <span class=\"pl-k\">=</span> <span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">isShape</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1815\" class=\"blob-num js-line-number\" data-line-number=\"1815\"></td>\n        <td id=\"LC1815\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1816\" class=\"blob-num js-line-number\" data-line-number=\"1816\"></td>\n        <td id=\"LC1816\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">CompositeShape</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1817\" class=\"blob-num js-line-number\" data-line-number=\"1817\"></td>\n        <td id=\"LC1817\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1818\" class=\"blob-num js-line-number\" data-line-number=\"1818\"></td>\n        <td id=\"LC1818\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (firstInit) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1819\" class=\"blob-num js-line-number\" data-line-number=\"1819\"></td>\n        <td id=\"LC1819\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>defaultValue<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() { <span class=\"pl-k\">return</span> {}; });</td>\n      </tr>\n      <tr>\n        <td id=\"L1820\" class=\"blob-num js-line-number\" data-line-number=\"1820\"></td>\n        <td id=\"LC1820\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>members<span class=\"pl-pds\">&#39;</span></span>, {});</td>\n      </tr>\n      <tr>\n        <td id=\"L1821\" class=\"blob-num js-line-number\" data-line-number=\"1821\"></td>\n        <td id=\"LC1821\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>memberNames<span class=\"pl-pds\">&#39;</span></span>, []);</td>\n      </tr>\n      <tr>\n        <td id=\"L1822\" class=\"blob-num js-line-number\" data-line-number=\"1822\"></td>\n        <td id=\"LC1822\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>required<span class=\"pl-pds\">&#39;</span></span>, []);</td>\n      </tr>\n      <tr>\n        <td id=\"L1823\" class=\"blob-num js-line-number\" data-line-number=\"1823\"></td>\n        <td id=\"LC1823\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>isRequired<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() { <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>; });</td>\n      </tr>\n      <tr>\n        <td id=\"L1824\" class=\"blob-num js-line-number\" data-line-number=\"1824\"></td>\n        <td id=\"LC1824\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1825\" class=\"blob-num js-line-number\" data-line-number=\"1825\"></td>\n        <td id=\"LC1825\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1826\" class=\"blob-num js-line-number\" data-line-number=\"1826\"></td>\n        <td id=\"LC1826\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1827\" class=\"blob-num js-line-number\" data-line-number=\"1827\"></td>\n        <td id=\"LC1827\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>members<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">new</span> <span class=\"pl-en\">Collection</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>, options, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">member</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1828\" class=\"blob-num js-line-number\" data-line-number=\"1828\"></td>\n        <td id=\"LC1828\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>(member, options, name);</td>\n      </tr>\n      <tr>\n        <td id=\"L1829\" class=\"blob-num js-line-number\" data-line-number=\"1829\"></td>\n        <td id=\"LC1829\" class=\"blob-code blob-code-inner js-file-line\">    }));</td>\n      </tr>\n      <tr>\n        <td id=\"L1830\" class=\"blob-num js-line-number\" data-line-number=\"1830\"></td>\n        <td id=\"LC1830\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>memberNames<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1831\" class=\"blob-num js-line-number\" data-line-number=\"1831\"></td>\n        <td id=\"LC1831\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlOrder</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1832\" class=\"blob-num js-line-number\" data-line-number=\"1832\"></td>\n        <td id=\"LC1832\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1833\" class=\"blob-num js-line-number\" data-line-number=\"1833\"></td>\n        <td id=\"LC1833\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1834\" class=\"blob-num js-line-number\" data-line-number=\"1834\"></td>\n        <td id=\"LC1834\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1835\" class=\"blob-num js-line-number\" data-line-number=\"1835\"></td>\n        <td id=\"LC1835\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">required</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1836\" class=\"blob-num js-line-number\" data-line-number=\"1836\"></td>\n        <td id=\"LC1836\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>required<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">required</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1837\" class=\"blob-num js-line-number\" data-line-number=\"1837\"></td>\n        <td id=\"LC1837\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>isRequired<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1838\" class=\"blob-num js-line-number\" data-line-number=\"1838\"></td>\n        <td id=\"LC1838\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>requiredMap) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1839\" class=\"blob-num js-line-number\" data-line-number=\"1839\"></td>\n        <td id=\"LC1839\" class=\"blob-code blob-code-inner js-file-line\">        requiredMap <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L1840\" class=\"blob-num js-line-number\" data-line-number=\"1840\"></td>\n        <td id=\"LC1840\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">required</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1841\" class=\"blob-num js-line-number\" data-line-number=\"1841\"></td>\n        <td id=\"LC1841\" class=\"blob-code blob-code-inner js-file-line\">          requiredMap[<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">required</span>[i]] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1842\" class=\"blob-num js-line-number\" data-line-number=\"1842\"></td>\n        <td id=\"LC1842\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L1843\" class=\"blob-num js-line-number\" data-line-number=\"1843\"></td>\n        <td id=\"LC1843\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1844\" class=\"blob-num js-line-number\" data-line-number=\"1844\"></td>\n        <td id=\"LC1844\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1845\" class=\"blob-num js-line-number\" data-line-number=\"1845\"></td>\n        <td id=\"LC1845\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> requiredMap[name];</td>\n      </tr>\n      <tr>\n        <td id=\"L1846\" class=\"blob-num js-line-number\" data-line-number=\"1846\"></td>\n        <td id=\"LC1846\" class=\"blob-code blob-code-inner js-file-line\">    }, <span class=\"pl-c1\">false</span>, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1847\" class=\"blob-num js-line-number\" data-line-number=\"1847\"></td>\n        <td id=\"LC1847\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1848\" class=\"blob-num js-line-number\" data-line-number=\"1848\"></td>\n        <td id=\"LC1848\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1849\" class=\"blob-num js-line-number\" data-line-number=\"1849\"></td>\n        <td id=\"LC1849\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>resultWrapper<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">resultWrapper</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">null</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1850\" class=\"blob-num js-line-number\" data-line-number=\"1850\"></td>\n        <td id=\"LC1850\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1851\" class=\"blob-num js-line-number\" data-line-number=\"1851\"></td>\n        <td id=\"LC1851\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">payload</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1852\" class=\"blob-num js-line-number\" data-line-number=\"1852\"></td>\n        <td id=\"LC1852\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>payload<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">payload</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1853\" class=\"blob-num js-line-number\" data-line-number=\"1853\"></td>\n        <td id=\"LC1853\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1854\" class=\"blob-num js-line-number\" data-line-number=\"1854\"></td>\n        <td id=\"LC1854\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1855\" class=\"blob-num js-line-number\" data-line-number=\"1855\"></td>\n        <td id=\"LC1855\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlNamespace</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1856\" class=\"blob-num js-line-number\" data-line-number=\"1856\"></td>\n        <td id=\"LC1856\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>xmlNamespaceUri<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlNamespace</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1857\" class=\"blob-num js-line-number\" data-line-number=\"1857\"></td>\n        <td id=\"LC1857\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlNamespace</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1858\" class=\"blob-num js-line-number\" data-line-number=\"1858\"></td>\n        <td id=\"LC1858\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>xmlNamespacePrefix<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlNamespace</span>.<span class=\"pl-c1\">prefix</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1859\" class=\"blob-num js-line-number\" data-line-number=\"1859\"></td>\n        <td id=\"LC1859\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>xmlNamespaceUri<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlNamespace</span>.<span class=\"pl-smi\">uri</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1860\" class=\"blob-num js-line-number\" data-line-number=\"1860\"></td>\n        <td id=\"LC1860\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1861\" class=\"blob-num js-line-number\" data-line-number=\"1861\"></td>\n        <td id=\"LC1861\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1862\" class=\"blob-num js-line-number\" data-line-number=\"1862\"></td>\n        <td id=\"LC1862\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1863\" class=\"blob-num js-line-number\" data-line-number=\"1863\"></td>\n        <td id=\"LC1863\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">ListShape</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1864\" class=\"blob-num js-line-number\" data-line-number=\"1864\"></td>\n        <td id=\"LC1864\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>, firstInit <span class=\"pl-k\">=</span> <span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">isShape</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1865\" class=\"blob-num js-line-number\" data-line-number=\"1865\"></td>\n        <td id=\"LC1865\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">CompositeShape</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1866\" class=\"blob-num js-line-number\" data-line-number=\"1866\"></td>\n        <td id=\"LC1866\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1867\" class=\"blob-num js-line-number\" data-line-number=\"1867\"></td>\n        <td id=\"LC1867\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (firstInit) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1868\" class=\"blob-num js-line-number\" data-line-number=\"1868\"></td>\n        <td id=\"LC1868\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>defaultValue<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() { <span class=\"pl-k\">return</span> []; });</td>\n      </tr>\n      <tr>\n        <td id=\"L1869\" class=\"blob-num js-line-number\" data-line-number=\"1869\"></td>\n        <td id=\"LC1869\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1870\" class=\"blob-num js-line-number\" data-line-number=\"1870\"></td>\n        <td id=\"LC1870\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1871\" class=\"blob-num js-line-number\" data-line-number=\"1871\"></td>\n        <td id=\"LC1871\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1872\" class=\"blob-num js-line-number\" data-line-number=\"1872\"></td>\n        <td id=\"LC1872\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>member<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1873\" class=\"blob-num js-line-number\" data-line-number=\"1873\"></td>\n        <td id=\"LC1873\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1874\" class=\"blob-num js-line-number\" data-line-number=\"1874\"></td>\n        <td id=\"LC1874\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1875\" class=\"blob-num js-line-number\" data-line-number=\"1875\"></td>\n        <td id=\"LC1875\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1876\" class=\"blob-num js-line-number\" data-line-number=\"1876\"></td>\n        <td id=\"LC1876\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1877\" class=\"blob-num js-line-number\" data-line-number=\"1877\"></td>\n        <td id=\"LC1877\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">flattened</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1878\" class=\"blob-num js-line-number\" data-line-number=\"1878\"></td>\n        <td id=\"LC1878\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> oldName <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1879\" class=\"blob-num js-line-number\" data-line-number=\"1879\"></td>\n        <td id=\"LC1879\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>name<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1880\" class=\"blob-num js-line-number\" data-line-number=\"1880\"></td>\n        <td id=\"LC1880\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> oldName;</td>\n      </tr>\n      <tr>\n        <td id=\"L1881\" class=\"blob-num js-line-number\" data-line-number=\"1881\"></td>\n        <td id=\"LC1881\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1882\" class=\"blob-num js-line-number\" data-line-number=\"1882\"></td>\n        <td id=\"LC1882\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1883\" class=\"blob-num js-line-number\" data-line-number=\"1883\"></td>\n        <td id=\"LC1883\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1884\" class=\"blob-num js-line-number\" data-line-number=\"1884\"></td>\n        <td id=\"LC1884\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1885\" class=\"blob-num js-line-number\" data-line-number=\"1885\"></td>\n        <td id=\"LC1885\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">MapShape</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1886\" class=\"blob-num js-line-number\" data-line-number=\"1886\"></td>\n        <td id=\"LC1886\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> firstInit <span class=\"pl-k\">=</span> <span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">isShape</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1887\" class=\"blob-num js-line-number\" data-line-number=\"1887\"></td>\n        <td id=\"LC1887\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">CompositeShape</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1888\" class=\"blob-num js-line-number\" data-line-number=\"1888\"></td>\n        <td id=\"LC1888\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1889\" class=\"blob-num js-line-number\" data-line-number=\"1889\"></td>\n        <td id=\"LC1889\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (firstInit) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1890\" class=\"blob-num js-line-number\" data-line-number=\"1890\"></td>\n        <td id=\"LC1890\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>defaultValue<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() { <span class=\"pl-k\">return</span> {}; });</td>\n      </tr>\n      <tr>\n        <td id=\"L1891\" class=\"blob-num js-line-number\" data-line-number=\"1891\"></td>\n        <td id=\"LC1891\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>key<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>({type<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>}, options));</td>\n      </tr>\n      <tr>\n        <td id=\"L1892\" class=\"blob-num js-line-number\" data-line-number=\"1892\"></td>\n        <td id=\"LC1892\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>({type<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>}, options));</td>\n      </tr>\n      <tr>\n        <td id=\"L1893\" class=\"blob-num js-line-number\" data-line-number=\"1893\"></td>\n        <td id=\"LC1893\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1894\" class=\"blob-num js-line-number\" data-line-number=\"1894\"></td>\n        <td id=\"LC1894\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1895\" class=\"blob-num js-line-number\" data-line-number=\"1895\"></td>\n        <td id=\"LC1895\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1896\" class=\"blob-num js-line-number\" data-line-number=\"1896\"></td>\n        <td id=\"LC1896\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>key<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1897\" class=\"blob-num js-line-number\" data-line-number=\"1897\"></td>\n        <td id=\"LC1897\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">key</span>, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1898\" class=\"blob-num js-line-number\" data-line-number=\"1898\"></td>\n        <td id=\"LC1898\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1899\" class=\"blob-num js-line-number\" data-line-number=\"1899\"></td>\n        <td id=\"LC1899\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1900\" class=\"blob-num js-line-number\" data-line-number=\"1900\"></td>\n        <td id=\"LC1900\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1901\" class=\"blob-num js-line-number\" data-line-number=\"1901\"></td>\n        <td id=\"LC1901\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1902\" class=\"blob-num js-line-number\" data-line-number=\"1902\"></td>\n        <td id=\"LC1902\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">value</span>, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L1903\" class=\"blob-num js-line-number\" data-line-number=\"1903\"></td>\n        <td id=\"LC1903\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L1904\" class=\"blob-num js-line-number\" data-line-number=\"1904\"></td>\n        <td id=\"LC1904\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1905\" class=\"blob-num js-line-number\" data-line-number=\"1905\"></td>\n        <td id=\"LC1905\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1906\" class=\"blob-num js-line-number\" data-line-number=\"1906\"></td>\n        <td id=\"LC1906\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1907\" class=\"blob-num js-line-number\" data-line-number=\"1907\"></td>\n        <td id=\"LC1907\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">TimestampShape</span>(<span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1908\" class=\"blob-num js-line-number\" data-line-number=\"1908\"></td>\n        <td id=\"LC1908\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1909\" class=\"blob-num js-line-number\" data-line-number=\"1909\"></td>\n        <td id=\"LC1909\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Shape</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1910\" class=\"blob-num js-line-number\" data-line-number=\"1910\"></td>\n        <td id=\"LC1910\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1911\" class=\"blob-num js-line-number\" data-line-number=\"1911\"></td>\n        <td id=\"LC1911\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>header<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1912\" class=\"blob-num js-line-number\" data-line-number=\"1912\"></td>\n        <td id=\"LC1912\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>timestampFormat<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>rfc822<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1913\" class=\"blob-num js-line-number\" data-line-number=\"1913\"></td>\n        <td id=\"LC1913\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">timestampFormat</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1914\" class=\"blob-num js-line-number\" data-line-number=\"1914\"></td>\n        <td id=\"LC1914\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>timestampFormat<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">timestampFormat</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1915\" class=\"blob-num js-line-number\" data-line-number=\"1915\"></td>\n        <td id=\"LC1915\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1916\" class=\"blob-num js-line-number\" data-line-number=\"1916\"></td>\n        <td id=\"LC1916\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">timestampFormat</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1917\" class=\"blob-num js-line-number\" data-line-number=\"1917\"></td>\n        <td id=\"LC1917\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>timestampFormat<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">timestampFormat</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1918\" class=\"blob-num js-line-number\" data-line-number=\"1918\"></td>\n        <td id=\"LC1918\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L1919\" class=\"blob-num js-line-number\" data-line-number=\"1919\"></td>\n        <td id=\"LC1919\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">switch</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-c1\">protocol</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1920\" class=\"blob-num js-line-number\" data-line-number=\"1920\"></td>\n        <td id=\"LC1920\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>json<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1921\" class=\"blob-num js-line-number\" data-line-number=\"1921\"></td>\n        <td id=\"LC1921\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>rest-json<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1922\" class=\"blob-num js-line-number\" data-line-number=\"1922\"></td>\n        <td id=\"LC1922\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>timestampFormat<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>unixTimestamp<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1923\" class=\"blob-num js-line-number\" data-line-number=\"1923\"></td>\n        <td id=\"LC1923\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1924\" class=\"blob-num js-line-number\" data-line-number=\"1924\"></td>\n        <td id=\"LC1924\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>rest-xml<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1925\" class=\"blob-num js-line-number\" data-line-number=\"1925\"></td>\n        <td id=\"LC1925\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>query<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1926\" class=\"blob-num js-line-number\" data-line-number=\"1926\"></td>\n        <td id=\"LC1926\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ec2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1927\" class=\"blob-num js-line-number\" data-line-number=\"1927\"></td>\n        <td id=\"LC1927\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">property</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>timestampFormat<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>iso8601<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1928\" class=\"blob-num js-line-number\" data-line-number=\"1928\"></td>\n        <td id=\"LC1928\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1929\" class=\"blob-num js-line-number\" data-line-number=\"1929\"></td>\n        <td id=\"LC1929\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L1930\" class=\"blob-num js-line-number\" data-line-number=\"1930\"></td>\n        <td id=\"LC1930\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1931\" class=\"blob-num js-line-number\" data-line-number=\"1931\"></td>\n        <td id=\"LC1931\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1932\" class=\"blob-num js-line-number\" data-line-number=\"1932\"></td>\n        <td id=\"LC1932\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1933\" class=\"blob-num js-line-number\" data-line-number=\"1933\"></td>\n        <td id=\"LC1933\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">toType</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1934\" class=\"blob-num js-line-number\" data-line-number=\"1934\"></td>\n        <td id=\"LC1934\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1935\" class=\"blob-num js-line-number\" data-line-number=\"1935\"></td>\n        <td id=\"LC1935\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">toUTCString</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L1936\" class=\"blob-num js-line-number\" data-line-number=\"1936\"></td>\n        <td id=\"LC1936\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">?</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1937\" class=\"blob-num js-line-number\" data-line-number=\"1937\"></td>\n        <td id=\"LC1937\" class=\"blob-code blob-code-inner js-file-line\">           <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-en\">parseTimestamp</span>(value) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1938\" class=\"blob-num js-line-number\" data-line-number=\"1938\"></td>\n        <td id=\"LC1938\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L1939\" class=\"blob-num js-line-number\" data-line-number=\"1939\"></td>\n        <td id=\"LC1939\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1940\" class=\"blob-num js-line-number\" data-line-number=\"1940\"></td>\n        <td id=\"LC1940\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">toWireFormat</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1941\" class=\"blob-num js-line-number\" data-line-number=\"1941\"></td>\n        <td id=\"LC1941\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-en\">format</span>(value, <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">timestampFormat</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1942\" class=\"blob-num js-line-number\" data-line-number=\"1942\"></td>\n        <td id=\"LC1942\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L1943\" class=\"blob-num js-line-number\" data-line-number=\"1943\"></td>\n        <td id=\"LC1943\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1944\" class=\"blob-num js-line-number\" data-line-number=\"1944\"></td>\n        <td id=\"LC1944\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1945\" class=\"blob-num js-line-number\" data-line-number=\"1945\"></td>\n        <td id=\"LC1945\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">StringShape</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1946\" class=\"blob-num js-line-number\" data-line-number=\"1946\"></td>\n        <td id=\"LC1946\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Shape</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1947\" class=\"blob-num js-line-number\" data-line-number=\"1947\"></td>\n        <td id=\"LC1947\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1948\" class=\"blob-num js-line-number\" data-line-number=\"1948\"></td>\n        <td id=\"LC1948\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1949\" class=\"blob-num js-line-number\" data-line-number=\"1949\"></td>\n        <td id=\"LC1949\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">switch</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-c1\">protocol</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1950\" class=\"blob-num js-line-number\" data-line-number=\"1950\"></td>\n        <td id=\"LC1950\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>rest-xml<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1951\" class=\"blob-num js-line-number\" data-line-number=\"1951\"></td>\n        <td id=\"LC1951\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>query<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1952\" class=\"blob-num js-line-number\" data-line-number=\"1952\"></td>\n        <td id=\"LC1952\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ec2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L1953\" class=\"blob-num js-line-number\" data-line-number=\"1953\"></td>\n        <td id=\"LC1953\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">toType</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) { <span class=\"pl-k\">return</span> value <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>; };</td>\n      </tr>\n      <tr>\n        <td id=\"L1954\" class=\"blob-num js-line-number\" data-line-number=\"1954\"></td>\n        <td id=\"LC1954\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L1955\" class=\"blob-num js-line-number\" data-line-number=\"1955\"></td>\n        <td id=\"LC1955\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L1956\" class=\"blob-num js-line-number\" data-line-number=\"1956\"></td>\n        <td id=\"LC1956\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1957\" class=\"blob-num js-line-number\" data-line-number=\"1957\"></td>\n        <td id=\"LC1957\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1958\" class=\"blob-num js-line-number\" data-line-number=\"1958\"></td>\n        <td id=\"LC1958\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">FloatShape</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1959\" class=\"blob-num js-line-number\" data-line-number=\"1959\"></td>\n        <td id=\"LC1959\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Shape</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1960\" class=\"blob-num js-line-number\" data-line-number=\"1960\"></td>\n        <td id=\"LC1960\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1961\" class=\"blob-num js-line-number\" data-line-number=\"1961\"></td>\n        <td id=\"LC1961\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">toType</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1962\" class=\"blob-num js-line-number\" data-line-number=\"1962\"></td>\n        <td id=\"LC1962\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1963\" class=\"blob-num js-line-number\" data-line-number=\"1963\"></td>\n        <td id=\"LC1963\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">parseFloat</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L1964\" class=\"blob-num js-line-number\" data-line-number=\"1964\"></td>\n        <td id=\"LC1964\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L1965\" class=\"blob-num js-line-number\" data-line-number=\"1965\"></td>\n        <td id=\"LC1965\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">toWireFormat</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">toType</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1966\" class=\"blob-num js-line-number\" data-line-number=\"1966\"></td>\n        <td id=\"LC1966\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1967\" class=\"blob-num js-line-number\" data-line-number=\"1967\"></td>\n        <td id=\"LC1967\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1968\" class=\"blob-num js-line-number\" data-line-number=\"1968\"></td>\n        <td id=\"LC1968\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">IntegerShape</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1969\" class=\"blob-num js-line-number\" data-line-number=\"1969\"></td>\n        <td id=\"LC1969\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Shape</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1970\" class=\"blob-num js-line-number\" data-line-number=\"1970\"></td>\n        <td id=\"LC1970\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1971\" class=\"blob-num js-line-number\" data-line-number=\"1971\"></td>\n        <td id=\"LC1971\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">toType</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1972\" class=\"blob-num js-line-number\" data-line-number=\"1972\"></td>\n        <td id=\"LC1972\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1973\" class=\"blob-num js-line-number\" data-line-number=\"1973\"></td>\n        <td id=\"LC1973\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">parseInt</span>(value, <span class=\"pl-c1\">10</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1974\" class=\"blob-num js-line-number\" data-line-number=\"1974\"></td>\n        <td id=\"LC1974\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L1975\" class=\"blob-num js-line-number\" data-line-number=\"1975\"></td>\n        <td id=\"LC1975\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">toWireFormat</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">toType</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1976\" class=\"blob-num js-line-number\" data-line-number=\"1976\"></td>\n        <td id=\"LC1976\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1977\" class=\"blob-num js-line-number\" data-line-number=\"1977\"></td>\n        <td id=\"LC1977\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1978\" class=\"blob-num js-line-number\" data-line-number=\"1978\"></td>\n        <td id=\"LC1978\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">BinaryShape</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1979\" class=\"blob-num js-line-number\" data-line-number=\"1979\"></td>\n        <td id=\"LC1979\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Shape</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1980\" class=\"blob-num js-line-number\" data-line-number=\"1980\"></td>\n        <td id=\"LC1980\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">toType</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">base64</span>.<span class=\"pl-smi\">decode</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1981\" class=\"blob-num js-line-number\" data-line-number=\"1981\"></td>\n        <td id=\"LC1981\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">toWireFormat</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">base64</span>.<span class=\"pl-smi\">encode</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1982\" class=\"blob-num js-line-number\" data-line-number=\"1982\"></td>\n        <td id=\"LC1982\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1983\" class=\"blob-num js-line-number\" data-line-number=\"1983\"></td>\n        <td id=\"LC1983\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1984\" class=\"blob-num js-line-number\" data-line-number=\"1984\"></td>\n        <td id=\"LC1984\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">Base64Shape</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1985\" class=\"blob-num js-line-number\" data-line-number=\"1985\"></td>\n        <td id=\"LC1985\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">BinaryShape</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1986\" class=\"blob-num js-line-number\" data-line-number=\"1986\"></td>\n        <td id=\"LC1986\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1987\" class=\"blob-num js-line-number\" data-line-number=\"1987\"></td>\n        <td id=\"LC1987\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1988\" class=\"blob-num js-line-number\" data-line-number=\"1988\"></td>\n        <td id=\"LC1988\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">BooleanShape</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L1989\" class=\"blob-num js-line-number\" data-line-number=\"1989\"></td>\n        <td id=\"LC1989\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Shape</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L1990\" class=\"blob-num js-line-number\" data-line-number=\"1990\"></td>\n        <td id=\"LC1990\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1991\" class=\"blob-num js-line-number\" data-line-number=\"1991\"></td>\n        <td id=\"LC1991\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">toType</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L1992\" class=\"blob-num js-line-number\" data-line-number=\"1992\"></td>\n        <td id=\"LC1992\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L1993\" class=\"blob-num js-line-number\" data-line-number=\"1993\"></td>\n        <td id=\"LC1993\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1994\" class=\"blob-num js-line-number\" data-line-number=\"1994\"></td>\n        <td id=\"LC1994\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>true<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L1995\" class=\"blob-num js-line-number\" data-line-number=\"1995\"></td>\n        <td id=\"LC1995\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L1996\" class=\"blob-num js-line-number\" data-line-number=\"1996\"></td>\n        <td id=\"LC1996\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L1997\" class=\"blob-num js-line-number\" data-line-number=\"1997\"></td>\n        <td id=\"LC1997\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1998\" class=\"blob-num js-line-number\" data-line-number=\"1998\"></td>\n        <td id=\"LC1998\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L1999\" class=\"blob-num js-line-number\" data-line-number=\"1999\"></td>\n        <td id=\"LC1999\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Shape</span>.<span class=\"pl-smi\">shapes</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2000\" class=\"blob-num js-line-number\" data-line-number=\"2000\"></td>\n        <td id=\"LC2000\" class=\"blob-code blob-code-inner js-file-line\">  StructureShape<span class=\"pl-k\">:</span> StructureShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L2001\" class=\"blob-num js-line-number\" data-line-number=\"2001\"></td>\n        <td id=\"LC2001\" class=\"blob-code blob-code-inner js-file-line\">  ListShape<span class=\"pl-k\">:</span> ListShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L2002\" class=\"blob-num js-line-number\" data-line-number=\"2002\"></td>\n        <td id=\"LC2002\" class=\"blob-code blob-code-inner js-file-line\">  MapShape<span class=\"pl-k\">:</span> MapShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L2003\" class=\"blob-num js-line-number\" data-line-number=\"2003\"></td>\n        <td id=\"LC2003\" class=\"blob-code blob-code-inner js-file-line\">  StringShape<span class=\"pl-k\">:</span> StringShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L2004\" class=\"blob-num js-line-number\" data-line-number=\"2004\"></td>\n        <td id=\"LC2004\" class=\"blob-code blob-code-inner js-file-line\">  BooleanShape<span class=\"pl-k\">:</span> BooleanShape,</td>\n      </tr>\n      <tr>\n        <td id=\"L2005\" class=\"blob-num js-line-number\" data-line-number=\"2005\"></td>\n        <td id=\"LC2005\" class=\"blob-code blob-code-inner js-file-line\">  Base64Shape<span class=\"pl-k\">:</span> Base64Shape</td>\n      </tr>\n      <tr>\n        <td id=\"L2006\" class=\"blob-num js-line-number\" data-line-number=\"2006\"></td>\n        <td id=\"LC2006\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L2007\" class=\"blob-num js-line-number\" data-line-number=\"2007\"></td>\n        <td id=\"LC2007\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2008\" class=\"blob-num js-line-number\" data-line-number=\"2008\"></td>\n        <td id=\"LC2008\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> Shape;</td>\n      </tr>\n      <tr>\n        <td id=\"L2009\" class=\"blob-num js-line-number\" data-line-number=\"2009\"></td>\n        <td id=\"LC2009\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2010\" class=\"blob-num js-line-number\" data-line-number=\"2010\"></td>\n        <td id=\"LC2010\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./collection<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">16</span>}],<span class=\"pl-c1\">21</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L2011\" class=\"blob-num js-line-number\" data-line-number=\"2011\"></td>\n        <td id=\"LC2011\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2012\" class=\"blob-num js-line-number\" data-line-number=\"2012\"></td>\n        <td id=\"LC2012\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2013\" class=\"blob-num js-line-number\" data-line-number=\"2013\"></td>\n        <td id=\"LC2013\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2014\" class=\"blob-num js-line-number\" data-line-number=\"2014\"></td>\n        <td id=\"LC2014\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">ParamValidator</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L2015\" class=\"blob-num js-line-number\" data-line-number=\"2015\"></td>\n        <td id=\"LC2015\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2016\" class=\"blob-num js-line-number\" data-line-number=\"2016\"></td>\n        <td id=\"LC2016\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">ParamValidator</span>(<span class=\"pl-smi\">validation</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2017\" class=\"blob-num js-line-number\" data-line-number=\"2017\"></td>\n        <td id=\"LC2017\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (validation <span class=\"pl-k\">===</span> <span class=\"pl-c1\">true</span> <span class=\"pl-k\">||</span> validation <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2018\" class=\"blob-num js-line-number\" data-line-number=\"2018\"></td>\n        <td id=\"LC2018\" class=\"blob-code blob-code-inner js-file-line\">      validation <span class=\"pl-k\">=</span> {<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>min<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>};</td>\n      </tr>\n      <tr>\n        <td id=\"L2019\" class=\"blob-num js-line-number\" data-line-number=\"2019\"></td>\n        <td id=\"LC2019\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2020\" class=\"blob-num js-line-number\" data-line-number=\"2020\"></td>\n        <td id=\"LC2020\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">validation</span> <span class=\"pl-k\">=</span> validation;</td>\n      </tr>\n      <tr>\n        <td id=\"L2021\" class=\"blob-num js-line-number\" data-line-number=\"2021\"></td>\n        <td id=\"LC2021\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2022\" class=\"blob-num js-line-number\" data-line-number=\"2022\"></td>\n        <td id=\"LC2022\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2023\" class=\"blob-num js-line-number\" data-line-number=\"2023\"></td>\n        <td id=\"LC2023\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validate</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validate</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">context</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2024\" class=\"blob-num js-line-number\" data-line-number=\"2024\"></td>\n        <td id=\"LC2024\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">errors</span> <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L2025\" class=\"blob-num js-line-number\" data-line-number=\"2025\"></td>\n        <td id=\"LC2025\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateMember</span>(shape, params <span class=\"pl-k\">||</span> {}, context <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>params<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2026\" class=\"blob-num js-line-number\" data-line-number=\"2026\"></td>\n        <td id=\"LC2026\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2027\" class=\"blob-num js-line-number\" data-line-number=\"2027\"></td>\n        <td id=\"LC2027\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">errors</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2028\" class=\"blob-num js-line-number\" data-line-number=\"2028\"></td>\n        <td id=\"LC2028\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> msg <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">errors</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span>* <span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2029\" class=\"blob-num js-line-number\" data-line-number=\"2029\"></td>\n        <td id=\"LC2029\" class=\"blob-code blob-code-inner js-file-line\">      msg <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>There were <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">errors</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2030\" class=\"blob-num js-line-number\" data-line-number=\"2030\"></td>\n        <td id=\"LC2030\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> validation errors:<span class=\"pl-cce\">\\n</span>* <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> msg;</td>\n      </tr>\n      <tr>\n        <td id=\"L2031\" class=\"blob-num js-line-number\" data-line-number=\"2031\"></td>\n        <td id=\"LC2031\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(msg),</td>\n      </tr>\n      <tr>\n        <td id=\"L2032\" class=\"blob-num js-line-number\" data-line-number=\"2032\"></td>\n        <td id=\"LC2032\" class=\"blob-code blob-code-inner js-file-line\">        {code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>MultipleValidationErrors<span class=\"pl-pds\">&#39;</span></span>, errors<span class=\"pl-k\">:</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">errors</span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L2033\" class=\"blob-num js-line-number\" data-line-number=\"2033\"></td>\n        <td id=\"LC2033\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">errors</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2034\" class=\"blob-num js-line-number\" data-line-number=\"2034\"></td>\n        <td id=\"LC2034\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">errors</span>[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2035\" class=\"blob-num js-line-number\" data-line-number=\"2035\"></td>\n        <td id=\"LC2035\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2036\" class=\"blob-num js-line-number\" data-line-number=\"2036\"></td>\n        <td id=\"LC2036\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2037\" class=\"blob-num js-line-number\" data-line-number=\"2037\"></td>\n        <td id=\"LC2037\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2038\" class=\"blob-num js-line-number\" data-line-number=\"2038\"></td>\n        <td id=\"LC2038\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2039\" class=\"blob-num js-line-number\" data-line-number=\"2039\"></td>\n        <td id=\"LC2039\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2040\" class=\"blob-num js-line-number\" data-line-number=\"2040\"></td>\n        <td id=\"LC2040\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">fail</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">fail</span>(<span class=\"pl-smi\">code</span>, <span class=\"pl-smi\">message</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2041\" class=\"blob-num js-line-number\" data-line-number=\"2041\"></td>\n        <td id=\"LC2041\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">errors</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(message), {code<span class=\"pl-k\">:</span> code}));</td>\n      </tr>\n      <tr>\n        <td id=\"L2042\" class=\"blob-num js-line-number\" data-line-number=\"2042\"></td>\n        <td id=\"LC2042\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2043\" class=\"blob-num js-line-number\" data-line-number=\"2043\"></td>\n        <td id=\"LC2043\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2044\" class=\"blob-num js-line-number\" data-line-number=\"2044\"></td>\n        <td id=\"LC2044\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validateStructure</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validateStructure</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">context</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2045\" class=\"blob-num js-line-number\" data-line-number=\"2045\"></td>\n        <td id=\"LC2045\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateType</span>(params, context, [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>], <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2046\" class=\"blob-num js-line-number\" data-line-number=\"2046\"></td>\n        <td id=\"LC2046\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2047\" class=\"blob-num js-line-number\" data-line-number=\"2047\"></td>\n        <td id=\"LC2047\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> paramName;</td>\n      </tr>\n      <tr>\n        <td id=\"L2048\" class=\"blob-num js-line-number\" data-line-number=\"2048\"></td>\n        <td id=\"LC2048\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">required</span> <span class=\"pl-k\">&amp;&amp;</span> i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">required</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2049\" class=\"blob-num js-line-number\" data-line-number=\"2049\"></td>\n        <td id=\"LC2049\" class=\"blob-code blob-code-inner js-file-line\">      paramName <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">required</span>[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L2050\" class=\"blob-num js-line-number\" data-line-number=\"2050\"></td>\n        <td id=\"LC2050\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> params[paramName];</td>\n      </tr>\n      <tr>\n        <td id=\"L2051\" class=\"blob-num js-line-number\" data-line-number=\"2051\"></td>\n        <td id=\"LC2051\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2052\" class=\"blob-num js-line-number\" data-line-number=\"2052\"></td>\n        <td id=\"LC2052\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">fail</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>MissingRequiredParameter<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2053\" class=\"blob-num js-line-number\" data-line-number=\"2053\"></td>\n        <td id=\"LC2053\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Missing required key <span class=\"pl-cce\">\\&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> paramName <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\&#39;</span> in <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2054\" class=\"blob-num js-line-number\" data-line-number=\"2054\"></td>\n        <td id=\"LC2054\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2055\" class=\"blob-num js-line-number\" data-line-number=\"2055\"></td>\n        <td id=\"LC2055\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2056\" class=\"blob-num js-line-number\" data-line-number=\"2056\"></td>\n        <td id=\"LC2056\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2057\" class=\"blob-num js-line-number\" data-line-number=\"2057\"></td>\n        <td id=\"LC2057\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (paramName <span class=\"pl-k\">in</span> params) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2058\" class=\"blob-num js-line-number\" data-line-number=\"2058\"></td>\n        <td id=\"LC2058\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">params</span>.<span class=\"pl-en\">hasOwnProperty</span>(paramName)) <span class=\"pl-k\">continue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2059\" class=\"blob-num js-line-number\" data-line-number=\"2059\"></td>\n        <td id=\"LC2059\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2060\" class=\"blob-num js-line-number\" data-line-number=\"2060\"></td>\n        <td id=\"LC2060\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> paramValue <span class=\"pl-k\">=</span> params[paramName],</td>\n      </tr>\n      <tr>\n        <td id=\"L2061\" class=\"blob-num js-line-number\" data-line-number=\"2061\"></td>\n        <td id=\"LC2061\" class=\"blob-code blob-code-inner js-file-line\">          memberShape <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>[paramName];</td>\n      </tr>\n      <tr>\n        <td id=\"L2062\" class=\"blob-num js-line-number\" data-line-number=\"2062\"></td>\n        <td id=\"LC2062\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2063\" class=\"blob-num js-line-number\" data-line-number=\"2063\"></td>\n        <td id=\"LC2063\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (memberShape <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2064\" class=\"blob-num js-line-number\" data-line-number=\"2064\"></td>\n        <td id=\"LC2064\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> memberContext <span class=\"pl-k\">=</span> [context, paramName].<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2065\" class=\"blob-num js-line-number\" data-line-number=\"2065\"></td>\n        <td id=\"LC2065\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateMember</span>(memberShape, paramValue, memberContext);</td>\n      </tr>\n      <tr>\n        <td id=\"L2066\" class=\"blob-num js-line-number\" data-line-number=\"2066\"></td>\n        <td id=\"LC2066\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2067\" class=\"blob-num js-line-number\" data-line-number=\"2067\"></td>\n        <td id=\"LC2067\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">fail</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>UnexpectedParameter<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2068\" class=\"blob-num js-line-number\" data-line-number=\"2068\"></td>\n        <td id=\"LC2068\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Unexpected key <span class=\"pl-cce\">\\&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> paramName <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\&#39;</span> found in <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2069\" class=\"blob-num js-line-number\" data-line-number=\"2069\"></td>\n        <td id=\"LC2069\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2070\" class=\"blob-num js-line-number\" data-line-number=\"2070\"></td>\n        <td id=\"LC2070\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2071\" class=\"blob-num js-line-number\" data-line-number=\"2071\"></td>\n        <td id=\"LC2071\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2072\" class=\"blob-num js-line-number\" data-line-number=\"2072\"></td>\n        <td id=\"LC2072\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2073\" class=\"blob-num js-line-number\" data-line-number=\"2073\"></td>\n        <td id=\"LC2073\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2074\" class=\"blob-num js-line-number\" data-line-number=\"2074\"></td>\n        <td id=\"LC2074\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2075\" class=\"blob-num js-line-number\" data-line-number=\"2075\"></td>\n        <td id=\"LC2075\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validateMember</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validateMember</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">param</span>, <span class=\"pl-smi\">context</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2076\" class=\"blob-num js-line-number\" data-line-number=\"2076\"></td>\n        <td id=\"LC2076\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">switch</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2077\" class=\"blob-num js-line-number\" data-line-number=\"2077\"></td>\n        <td id=\"LC2077\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2078\" class=\"blob-num js-line-number\" data-line-number=\"2078\"></td>\n        <td id=\"LC2078\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateStructure</span>(shape, param, context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2079\" class=\"blob-num js-line-number\" data-line-number=\"2079\"></td>\n        <td id=\"LC2079\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2080\" class=\"blob-num js-line-number\" data-line-number=\"2080\"></td>\n        <td id=\"LC2080\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateList</span>(shape, param, context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2081\" class=\"blob-num js-line-number\" data-line-number=\"2081\"></td>\n        <td id=\"LC2081\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2082\" class=\"blob-num js-line-number\" data-line-number=\"2082\"></td>\n        <td id=\"LC2082\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateMap</span>(shape, param, context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2083\" class=\"blob-num js-line-number\" data-line-number=\"2083\"></td>\n        <td id=\"LC2083\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2084\" class=\"blob-num js-line-number\" data-line-number=\"2084\"></td>\n        <td id=\"LC2084\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateScalar</span>(shape, param, context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2085\" class=\"blob-num js-line-number\" data-line-number=\"2085\"></td>\n        <td id=\"LC2085\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2086\" class=\"blob-num js-line-number\" data-line-number=\"2086\"></td>\n        <td id=\"LC2086\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2087\" class=\"blob-num js-line-number\" data-line-number=\"2087\"></td>\n        <td id=\"LC2087\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2088\" class=\"blob-num js-line-number\" data-line-number=\"2088\"></td>\n        <td id=\"LC2088\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validateList</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validateList</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">context</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2089\" class=\"blob-num js-line-number\" data-line-number=\"2089\"></td>\n        <td id=\"LC2089\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateType</span>(params, context, [<span class=\"pl-c1\">Array</span>])) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2090\" class=\"blob-num js-line-number\" data-line-number=\"2090\"></td>\n        <td id=\"LC2090\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateRange</span>(shape, <span class=\"pl-smi\">params</span>.<span class=\"pl-c1\">length</span>, context, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list member count<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2091\" class=\"blob-num js-line-number\" data-line-number=\"2091\"></td>\n        <td id=\"LC2091\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">params</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2092\" class=\"blob-num js-line-number\" data-line-number=\"2092\"></td>\n        <td id=\"LC2092\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateMember</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>, params[i], context <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> i <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2093\" class=\"blob-num js-line-number\" data-line-number=\"2093\"></td>\n        <td id=\"LC2093\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2094\" class=\"blob-num js-line-number\" data-line-number=\"2094\"></td>\n        <td id=\"LC2094\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2095\" class=\"blob-num js-line-number\" data-line-number=\"2095\"></td>\n        <td id=\"LC2095\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2096\" class=\"blob-num js-line-number\" data-line-number=\"2096\"></td>\n        <td id=\"LC2096\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2097\" class=\"blob-num js-line-number\" data-line-number=\"2097\"></td>\n        <td id=\"LC2097\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validateMap</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validateMap</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">context</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2098\" class=\"blob-num js-line-number\" data-line-number=\"2098\"></td>\n        <td id=\"LC2098\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateType</span>(params, context, [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>], <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2099\" class=\"blob-num js-line-number\" data-line-number=\"2099\"></td>\n        <td id=\"LC2099\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> mapCount <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2100\" class=\"blob-num js-line-number\" data-line-number=\"2100\"></td>\n        <td id=\"LC2100\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> param <span class=\"pl-k\">in</span> params) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2101\" class=\"blob-num js-line-number\" data-line-number=\"2101\"></td>\n        <td id=\"LC2101\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">params</span>.<span class=\"pl-en\">hasOwnProperty</span>(param)) <span class=\"pl-k\">continue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2102\" class=\"blob-num js-line-number\" data-line-number=\"2102\"></td>\n        <td id=\"LC2102\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateMember</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">key</span>, param,</td>\n      </tr>\n      <tr>\n        <td id=\"L2103\" class=\"blob-num js-line-number\" data-line-number=\"2103\"></td>\n        <td id=\"LC2103\" class=\"blob-code blob-code-inner js-file-line\">                            context <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[key=<span class=\"pl-cce\">\\&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> param <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L2104\" class=\"blob-num js-line-number\" data-line-number=\"2104\"></td>\n        <td id=\"LC2104\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateMember</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">value</span>, params[param],</td>\n      </tr>\n      <tr>\n        <td id=\"L2105\" class=\"blob-num js-line-number\" data-line-number=\"2105\"></td>\n        <td id=\"LC2105\" class=\"blob-code blob-code-inner js-file-line\">                            context <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[<span class=\"pl-cce\">\\&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> param <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2106\" class=\"blob-num js-line-number\" data-line-number=\"2106\"></td>\n        <td id=\"LC2106\" class=\"blob-code blob-code-inner js-file-line\">        mapCount<span class=\"pl-k\">++</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2107\" class=\"blob-num js-line-number\" data-line-number=\"2107\"></td>\n        <td id=\"LC2107\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2108\" class=\"blob-num js-line-number\" data-line-number=\"2108\"></td>\n        <td id=\"LC2108\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateRange</span>(shape, mapCount, context, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map member count<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2109\" class=\"blob-num js-line-number\" data-line-number=\"2109\"></td>\n        <td id=\"LC2109\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2110\" class=\"blob-num js-line-number\" data-line-number=\"2110\"></td>\n        <td id=\"LC2110\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2111\" class=\"blob-num js-line-number\" data-line-number=\"2111\"></td>\n        <td id=\"LC2111\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2112\" class=\"blob-num js-line-number\" data-line-number=\"2112\"></td>\n        <td id=\"LC2112\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validateScalar</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validateScalar</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">context</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2113\" class=\"blob-num js-line-number\" data-line-number=\"2113\"></td>\n        <td id=\"LC2113\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">switch</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2114\" class=\"blob-num js-line-number\" data-line-number=\"2114\"></td>\n        <td id=\"LC2114\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> null<span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2115\" class=\"blob-num js-line-number\" data-line-number=\"2115\"></td>\n        <td id=\"LC2115\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-c1\">undefined</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2116\" class=\"blob-num js-line-number\" data-line-number=\"2116\"></td>\n        <td id=\"LC2116\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2117\" class=\"blob-num js-line-number\" data-line-number=\"2117\"></td>\n        <td id=\"LC2117\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateString</span>(shape, value, context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2118\" class=\"blob-num js-line-number\" data-line-number=\"2118\"></td>\n        <td id=\"LC2118\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2119\" class=\"blob-num js-line-number\" data-line-number=\"2119\"></td>\n        <td id=\"LC2119\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>binary<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2120\" class=\"blob-num js-line-number\" data-line-number=\"2120\"></td>\n        <td id=\"LC2120\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validatePayload</span>(value, context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2121\" class=\"blob-num js-line-number\" data-line-number=\"2121\"></td>\n        <td id=\"LC2121\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>integer<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2122\" class=\"blob-num js-line-number\" data-line-number=\"2122\"></td>\n        <td id=\"LC2122\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>float<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2123\" class=\"blob-num js-line-number\" data-line-number=\"2123\"></td>\n        <td id=\"LC2123\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateNumber</span>(shape, value, context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2124\" class=\"blob-num js-line-number\" data-line-number=\"2124\"></td>\n        <td id=\"LC2124\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2125\" class=\"blob-num js-line-number\" data-line-number=\"2125\"></td>\n        <td id=\"LC2125\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateType</span>(value, context, [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L2126\" class=\"blob-num js-line-number\" data-line-number=\"2126\"></td>\n        <td id=\"LC2126\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>timestamp<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2127\" class=\"blob-num js-line-number\" data-line-number=\"2127\"></td>\n        <td id=\"LC2127\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateType</span>(value, context, [<span class=\"pl-c1\">Date</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2128\" class=\"blob-num js-line-number\" data-line-number=\"2128\"></td>\n        <td id=\"LC2128\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-sr\">          <span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\d</span><span class=\"pl-k\">{4}</span>-<span class=\"pl-c1\">\\d</span><span class=\"pl-k\">{2}</span>-<span class=\"pl-c1\">\\d</span><span class=\"pl-k\">{2}</span>T<span class=\"pl-c1\">\\d</span><span class=\"pl-k\">{2}</span>:<span class=\"pl-c1\">\\d</span><span class=\"pl-k\">{2}</span>:<span class=\"pl-c1\">\\d</span><span class=\"pl-k\">{2}</span>(<span class=\"pl-cce\">\\.</span><span class=\"pl-c1\">\\d</span><span class=\"pl-k\">+</span>)<span class=\"pl-k\">?</span>Z<span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L2129\" class=\"blob-num js-line-number\" data-line-number=\"2129\"></td>\n        <td id=\"LC2129\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Date object, ISO-8601 string, or a UNIX timestamp<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2130\" class=\"blob-num js-line-number\" data-line-number=\"2130\"></td>\n        <td id=\"LC2130\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2131\" class=\"blob-num js-line-number\" data-line-number=\"2131\"></td>\n        <td id=\"LC2131\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">fail</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>UnkownType<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Unhandled type <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2132\" class=\"blob-num js-line-number\" data-line-number=\"2132\"></td>\n        <td id=\"LC2132\" class=\"blob-code blob-code-inner js-file-line\">                         <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> for <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2133\" class=\"blob-num js-line-number\" data-line-number=\"2133\"></td>\n        <td id=\"LC2133\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2134\" class=\"blob-num js-line-number\" data-line-number=\"2134\"></td>\n        <td id=\"LC2134\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2135\" class=\"blob-num js-line-number\" data-line-number=\"2135\"></td>\n        <td id=\"LC2135\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2136\" class=\"blob-num js-line-number\" data-line-number=\"2136\"></td>\n        <td id=\"LC2136\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validateString</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validateString</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">context</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2137\" class=\"blob-num js-line-number\" data-line-number=\"2137\"></td>\n        <td id=\"LC2137\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateType</span>(value, context, [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>])) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2138\" class=\"blob-num js-line-number\" data-line-number=\"2138\"></td>\n        <td id=\"LC2138\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateEnum</span>(shape, value, context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2139\" class=\"blob-num js-line-number\" data-line-number=\"2139\"></td>\n        <td id=\"LC2139\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateRange</span>(shape, <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">length</span>, context, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string length<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2140\" class=\"blob-num js-line-number\" data-line-number=\"2140\"></td>\n        <td id=\"LC2140\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validatePattern</span>(shape, value, context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2141\" class=\"blob-num js-line-number\" data-line-number=\"2141\"></td>\n        <td id=\"LC2141\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2142\" class=\"blob-num js-line-number\" data-line-number=\"2142\"></td>\n        <td id=\"LC2142\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2143\" class=\"blob-num js-line-number\" data-line-number=\"2143\"></td>\n        <td id=\"LC2143\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2144\" class=\"blob-num js-line-number\" data-line-number=\"2144\"></td>\n        <td id=\"LC2144\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validatePattern</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validatePattern</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">context</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2145\" class=\"blob-num js-line-number\" data-line-number=\"2145\"></td>\n        <td id=\"LC2145\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">validation</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>pattern<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">&amp;&amp;</span> shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>pattern<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2146\" class=\"blob-num js-line-number\" data-line-number=\"2146\"></td>\n        <td id=\"LC2146\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">RegExp</span>(shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>pattern<span class=\"pl-pds\">&#39;</span></span>])).<span class=\"pl-c1\">test</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2147\" class=\"blob-num js-line-number\" data-line-number=\"2147\"></td>\n        <td id=\"LC2147\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">fail</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>PatternMatchError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Provided value &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> value <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot; <span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2148\" class=\"blob-num js-line-number\" data-line-number=\"2148\"></td>\n        <td id=\"LC2148\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>does not match regex pattern /<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>pattern<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/ for <span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2149\" class=\"blob-num js-line-number\" data-line-number=\"2149\"></td>\n        <td id=\"LC2149\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">+</span> context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2150\" class=\"blob-num js-line-number\" data-line-number=\"2150\"></td>\n        <td id=\"LC2150\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2151\" class=\"blob-num js-line-number\" data-line-number=\"2151\"></td>\n        <td id=\"LC2151\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2152\" class=\"blob-num js-line-number\" data-line-number=\"2152\"></td>\n        <td id=\"LC2152\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2153\" class=\"blob-num js-line-number\" data-line-number=\"2153\"></td>\n        <td id=\"LC2153\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2154\" class=\"blob-num js-line-number\" data-line-number=\"2154\"></td>\n        <td id=\"LC2154\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validateRange</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validateRange</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">context</span>, <span class=\"pl-smi\">descriptor</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2155\" class=\"blob-num js-line-number\" data-line-number=\"2155\"></td>\n        <td id=\"LC2155\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">validation</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>min<span class=\"pl-pds\">&#39;</span></span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2156\" class=\"blob-num js-line-number\" data-line-number=\"2156\"></td>\n        <td id=\"LC2156\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>min<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">&lt;</span> shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>min<span class=\"pl-pds\">&#39;</span></span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2157\" class=\"blob-num js-line-number\" data-line-number=\"2157\"></td>\n        <td id=\"LC2157\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">fail</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>MinRangeError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Expected <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> descriptor <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> &gt;= <span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2158\" class=\"blob-num js-line-number\" data-line-number=\"2158\"></td>\n        <td id=\"LC2158\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">+</span> shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>min<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>, but found <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> value <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> for <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2159\" class=\"blob-num js-line-number\" data-line-number=\"2159\"></td>\n        <td id=\"LC2159\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2160\" class=\"blob-num js-line-number\" data-line-number=\"2160\"></td>\n        <td id=\"LC2160\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2161\" class=\"blob-num js-line-number\" data-line-number=\"2161\"></td>\n        <td id=\"LC2161\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">validation</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>max<span class=\"pl-pds\">&#39;</span></span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2162\" class=\"blob-num js-line-number\" data-line-number=\"2162\"></td>\n        <td id=\"LC2162\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>max<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">&gt;</span> shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>max<span class=\"pl-pds\">&#39;</span></span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2163\" class=\"blob-num js-line-number\" data-line-number=\"2163\"></td>\n        <td id=\"LC2163\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">fail</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>MaxRangeError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Expected <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> descriptor <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> &lt;= <span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2164\" class=\"blob-num js-line-number\" data-line-number=\"2164\"></td>\n        <td id=\"LC2164\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">+</span> shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>max<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>, but found <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> value <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> for <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2165\" class=\"blob-num js-line-number\" data-line-number=\"2165\"></td>\n        <td id=\"LC2165\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2166\" class=\"blob-num js-line-number\" data-line-number=\"2166\"></td>\n        <td id=\"LC2166\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2167\" class=\"blob-num js-line-number\" data-line-number=\"2167\"></td>\n        <td id=\"LC2167\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2168\" class=\"blob-num js-line-number\" data-line-number=\"2168\"></td>\n        <td id=\"LC2168\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2169\" class=\"blob-num js-line-number\" data-line-number=\"2169\"></td>\n        <td id=\"LC2169\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validateEnum</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validateRange</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">context</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2170\" class=\"blob-num js-line-number\" data-line-number=\"2170\"></td>\n        <td id=\"LC2170\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">validation</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>enum<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">&amp;&amp;</span> shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>enum<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2171\" class=\"blob-num js-line-number\" data-line-number=\"2171\"></td>\n        <td id=\"LC2171\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>enum<span class=\"pl-pds\">&#39;</span></span>].<span class=\"pl-c1\">indexOf</span>(value) <span class=\"pl-k\">===</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2172\" class=\"blob-num js-line-number\" data-line-number=\"2172\"></td>\n        <td id=\"LC2172\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">fail</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>EnumError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Found string value of <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> value <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>, but <span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2173\" class=\"blob-num js-line-number\" data-line-number=\"2173\"></td>\n        <td id=\"LC2173\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>expected <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> shape[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>enum<span class=\"pl-pds\">&#39;</span></span>].<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>|<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> for <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> context);</td>\n      </tr>\n      <tr>\n        <td id=\"L2174\" class=\"blob-num js-line-number\" data-line-number=\"2174\"></td>\n        <td id=\"LC2174\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2175\" class=\"blob-num js-line-number\" data-line-number=\"2175\"></td>\n        <td id=\"LC2175\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2176\" class=\"blob-num js-line-number\" data-line-number=\"2176\"></td>\n        <td id=\"LC2176\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2177\" class=\"blob-num js-line-number\" data-line-number=\"2177\"></td>\n        <td id=\"LC2177\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2178\" class=\"blob-num js-line-number\" data-line-number=\"2178\"></td>\n        <td id=\"LC2178\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validateType</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validateType</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">context</span>, <span class=\"pl-smi\">acceptedTypes</span>, <span class=\"pl-smi\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2179\" class=\"blob-num js-line-number\" data-line-number=\"2179\"></td>\n        <td id=\"LC2179\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2180\" class=\"blob-num js-line-number\" data-line-number=\"2180\"></td>\n        <td id=\"LC2180\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2181\" class=\"blob-num js-line-number\" data-line-number=\"2181\"></td>\n        <td id=\"LC2181\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> foundInvalidType <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2182\" class=\"blob-num js-line-number\" data-line-number=\"2182\"></td>\n        <td id=\"LC2182\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">acceptedTypes</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2183\" class=\"blob-num js-line-number\" data-line-number=\"2183\"></td>\n        <td id=\"LC2183\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> acceptedTypes[i] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2184\" class=\"blob-num js-line-number\" data-line-number=\"2184\"></td>\n        <td id=\"LC2184\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> acceptedTypes[i]) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2185\" class=\"blob-num js-line-number\" data-line-number=\"2185\"></td>\n        <td id=\"LC2185\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (acceptedTypes[i] <span class=\"pl-k\">instanceof</span> <span class=\"pl-c1\">RegExp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2186\" class=\"blob-num js-line-number\" data-line-number=\"2186\"></td>\n        <td id=\"LC2186\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> ((value <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">toString</span>().<span class=\"pl-c1\">match</span>(acceptedTypes[i])) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2187\" class=\"blob-num js-line-number\" data-line-number=\"2187\"></td>\n        <td id=\"LC2187\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2188\" class=\"blob-num js-line-number\" data-line-number=\"2188\"></td>\n        <td id=\"LC2188\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">instanceof</span> acceptedTypes[i]) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2189\" class=\"blob-num js-line-number\" data-line-number=\"2189\"></td>\n        <td id=\"LC2189\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isType</span>(value, acceptedTypes[i])) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2190\" class=\"blob-num js-line-number\" data-line-number=\"2190\"></td>\n        <td id=\"LC2190\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>type <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>foundInvalidType) acceptedTypes <span class=\"pl-k\">=</span> <span class=\"pl-smi\">acceptedTypes</span>.<span class=\"pl-c1\">slice</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2191\" class=\"blob-num js-line-number\" data-line-number=\"2191\"></td>\n        <td id=\"LC2191\" class=\"blob-code blob-code-inner js-file-line\">        acceptedTypes[i] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">typeName</span>(acceptedTypes[i]);</td>\n      </tr>\n      <tr>\n        <td id=\"L2192\" class=\"blob-num js-line-number\" data-line-number=\"2192\"></td>\n        <td id=\"LC2192\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2193\" class=\"blob-num js-line-number\" data-line-number=\"2193\"></td>\n        <td id=\"LC2193\" class=\"blob-code blob-code-inner js-file-line\">      foundInvalidType <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2194\" class=\"blob-num js-line-number\" data-line-number=\"2194\"></td>\n        <td id=\"LC2194\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2195\" class=\"blob-num js-line-number\" data-line-number=\"2195\"></td>\n        <td id=\"LC2195\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2196\" class=\"blob-num js-line-number\" data-line-number=\"2196\"></td>\n        <td id=\"LC2196\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> acceptedType <span class=\"pl-k\">=</span> type;</td>\n      </tr>\n      <tr>\n        <td id=\"L2197\" class=\"blob-num js-line-number\" data-line-number=\"2197\"></td>\n        <td id=\"LC2197\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>acceptedType) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2198\" class=\"blob-num js-line-number\" data-line-number=\"2198\"></td>\n        <td id=\"LC2198\" class=\"blob-code blob-code-inner js-file-line\">      acceptedType <span class=\"pl-k\">=</span> <span class=\"pl-smi\">acceptedTypes</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>, <span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>,(<span class=\"pl-c1\">[<span class=\"pl-k\">^</span>,]</span><span class=\"pl-k\">+</span>)<span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>, or$1<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2199\" class=\"blob-num js-line-number\" data-line-number=\"2199\"></td>\n        <td id=\"LC2199\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2200\" class=\"blob-num js-line-number\" data-line-number=\"2200\"></td>\n        <td id=\"LC2200\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2201\" class=\"blob-num js-line-number\" data-line-number=\"2201\"></td>\n        <td id=\"LC2201\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> vowel <span class=\"pl-k\">=</span> <span class=\"pl-smi\">acceptedType</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">[aeiou]</span><span class=\"pl-pds\">/</span>i</span>) <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>n<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2202\" class=\"blob-num js-line-number\" data-line-number=\"2202\"></td>\n        <td id=\"LC2202\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">fail</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>InvalidParameterType<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Expected <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> context <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> to be a<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2203\" class=\"blob-num js-line-number\" data-line-number=\"2203\"></td>\n        <td id=\"LC2203\" class=\"blob-code blob-code-inner js-file-line\">              vowel <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> acceptedType);</td>\n      </tr>\n      <tr>\n        <td id=\"L2204\" class=\"blob-num js-line-number\" data-line-number=\"2204\"></td>\n        <td id=\"LC2204\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2205\" class=\"blob-num js-line-number\" data-line-number=\"2205\"></td>\n        <td id=\"LC2205\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2206\" class=\"blob-num js-line-number\" data-line-number=\"2206\"></td>\n        <td id=\"LC2206\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2207\" class=\"blob-num js-line-number\" data-line-number=\"2207\"></td>\n        <td id=\"LC2207\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validateNumber</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validateNumber</span>(<span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">context</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2208\" class=\"blob-num js-line-number\" data-line-number=\"2208\"></td>\n        <td id=\"LC2208\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2209\" class=\"blob-num js-line-number\" data-line-number=\"2209\"></td>\n        <td id=\"LC2209\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2210\" class=\"blob-num js-line-number\" data-line-number=\"2210\"></td>\n        <td id=\"LC2210\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> castedValue <span class=\"pl-k\">=</span> <span class=\"pl-c1\">parseFloat</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L2211\" class=\"blob-num js-line-number\" data-line-number=\"2211\"></td>\n        <td id=\"LC2211\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">castedValue</span>.<span class=\"pl-c1\">toString</span>() <span class=\"pl-k\">===</span> value) value <span class=\"pl-k\">=</span> castedValue;</td>\n      </tr>\n      <tr>\n        <td id=\"L2212\" class=\"blob-num js-line-number\" data-line-number=\"2212\"></td>\n        <td id=\"LC2212\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2213\" class=\"blob-num js-line-number\" data-line-number=\"2213\"></td>\n        <td id=\"LC2213\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateType</span>(value, context, [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>])) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2214\" class=\"blob-num js-line-number\" data-line-number=\"2214\"></td>\n        <td id=\"LC2214\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateRange</span>(shape, value, context, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>numeric value<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2215\" class=\"blob-num js-line-number\" data-line-number=\"2215\"></td>\n        <td id=\"LC2215\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2216\" class=\"blob-num js-line-number\" data-line-number=\"2216\"></td>\n        <td id=\"LC2216\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2217\" class=\"blob-num js-line-number\" data-line-number=\"2217\"></td>\n        <td id=\"LC2217\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2218\" class=\"blob-num js-line-number\" data-line-number=\"2218\"></td>\n        <td id=\"LC2218\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validatePayload</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validatePayload</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">context</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2219\" class=\"blob-num js-line-number\" data-line-number=\"2219\"></td>\n        <td id=\"LC2219\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2220\" class=\"blob-num js-line-number\" data-line-number=\"2220\"></td>\n        <td id=\"LC2220\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2221\" class=\"blob-num js-line-number\" data-line-number=\"2221\"></td>\n        <td id=\"LC2221\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">byteLength</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span>; <span class=\"pl-c\">// typed arrays</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2222\" class=\"blob-num js-line-number\" data-line-number=\"2222\"></td>\n        <td id=\"LC2222\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isNode</span>()) { <span class=\"pl-c\">// special check for buffer/stream in Node.js</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2223\" class=\"blob-num js-line-number\" data-line-number=\"2223\"></td>\n        <td id=\"LC2223\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> Stream <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">nodeRequire</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>stream<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-smi\">Stream</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2224\" class=\"blob-num js-line-number\" data-line-number=\"2224\"></td>\n        <td id=\"LC2224\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">isBuffer</span>(value) <span class=\"pl-k\">||</span> value <span class=\"pl-k\">instanceof</span> Stream) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2225\" class=\"blob-num js-line-number\" data-line-number=\"2225\"></td>\n        <td id=\"LC2225\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2226\" class=\"blob-num js-line-number\" data-line-number=\"2226\"></td>\n        <td id=\"LC2226\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2227\" class=\"blob-num js-line-number\" data-line-number=\"2227\"></td>\n        <td id=\"LC2227\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> types <span class=\"pl-k\">=</span> [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Buffer<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Stream<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>File<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Blob<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ArrayBuffer<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>DataView<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2228\" class=\"blob-num js-line-number\" data-line-number=\"2228\"></td>\n        <td id=\"LC2228\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2229\" class=\"blob-num js-line-number\" data-line-number=\"2229\"></td>\n        <td id=\"LC2229\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">types</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2230\" class=\"blob-num js-line-number\" data-line-number=\"2230\"></td>\n        <td id=\"LC2230\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isType</span>(value, types[i])) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2231\" class=\"blob-num js-line-number\" data-line-number=\"2231\"></td>\n        <td id=\"LC2231\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">typeName</span>(<span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">constructor</span>) <span class=\"pl-k\">===</span> types[i]) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2232\" class=\"blob-num js-line-number\" data-line-number=\"2232\"></td>\n        <td id=\"LC2232\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2233\" class=\"blob-num js-line-number\" data-line-number=\"2233\"></td>\n        <td id=\"LC2233\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2234\" class=\"blob-num js-line-number\" data-line-number=\"2234\"></td>\n        <td id=\"LC2234\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2235\" class=\"blob-num js-line-number\" data-line-number=\"2235\"></td>\n        <td id=\"LC2235\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">fail</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>InvalidParameterType<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Expected <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> context <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> to be a <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2236\" class=\"blob-num js-line-number\" data-line-number=\"2236\"></td>\n        <td id=\"LC2236\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string, Buffer, Stream, Blob, or typed array object<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2237\" class=\"blob-num js-line-number\" data-line-number=\"2237\"></td>\n        <td id=\"LC2237\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2238\" class=\"blob-num js-line-number\" data-line-number=\"2238\"></td>\n        <td id=\"LC2238\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L2239\" class=\"blob-num js-line-number\" data-line-number=\"2239\"></td>\n        <td id=\"LC2239\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2240\" class=\"blob-num js-line-number\" data-line-number=\"2240\"></td>\n        <td id=\"LC2240\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">22</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L2241\" class=\"blob-num js-line-number\" data-line-number=\"2241\"></td>\n        <td id=\"LC2241\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2242\" class=\"blob-num js-line-number\" data-line-number=\"2242\"></td>\n        <td id=\"LC2242\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> JsonBuilder <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../json/builder<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2243\" class=\"blob-num js-line-number\" data-line-number=\"2243\"></td>\n        <td id=\"LC2243\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> JsonParser <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../json/parser<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2244\" class=\"blob-num js-line-number\" data-line-number=\"2244\"></td>\n        <td id=\"LC2244\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2245\" class=\"blob-num js-line-number\" data-line-number=\"2245\"></td>\n        <td id=\"LC2245\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">buildRequest</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2246\" class=\"blob-num js-line-number\" data-line-number=\"2246\"></td>\n        <td id=\"LC2246\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> httpRequest <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2247\" class=\"blob-num js-line-number\" data-line-number=\"2247\"></td>\n        <td id=\"LC2247\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> api <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2248\" class=\"blob-num js-line-number\" data-line-number=\"2248\"></td>\n        <td id=\"LC2248\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> target <span class=\"pl-k\">=</span> <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">targetPrefix</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>].<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2249\" class=\"blob-num js-line-number\" data-line-number=\"2249\"></td>\n        <td id=\"LC2249\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> version <span class=\"pl-k\">=</span> <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">jsonVersion</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>1.0<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2250\" class=\"blob-num js-line-number\" data-line-number=\"2250\"></td>\n        <td id=\"LC2250\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> input <span class=\"pl-k\">=</span> <span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>].<span class=\"pl-c1\">input</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2251\" class=\"blob-num js-line-number\" data-line-number=\"2251\"></td>\n        <td id=\"LC2251\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> builder <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">JsonBuilder</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2252\" class=\"blob-num js-line-number\" data-line-number=\"2252\"></td>\n        <td id=\"LC2252\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2253\" class=\"blob-num js-line-number\" data-line-number=\"2253\"></td>\n        <td id=\"LC2253\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (version <span class=\"pl-k\">===</span> <span class=\"pl-c1\">1</span>) version <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>1.0<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2254\" class=\"blob-num js-line-number\" data-line-number=\"2254\"></td>\n        <td id=\"LC2254\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">builder</span>.<span class=\"pl-en\">build</span>(<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">params</span> <span class=\"pl-k\">||</span> {}, input);</td>\n      </tr>\n      <tr>\n        <td id=\"L2255\" class=\"blob-num js-line-number\" data-line-number=\"2255\"></td>\n        <td id=\"LC2255\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Type<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>application/x-amz-json-<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> version;</td>\n      </tr>\n      <tr>\n        <td id=\"L2256\" class=\"blob-num js-line-number\" data-line-number=\"2256\"></td>\n        <td id=\"LC2256\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Target<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> target;</td>\n      </tr>\n      <tr>\n        <td id=\"L2257\" class=\"blob-num js-line-number\" data-line-number=\"2257\"></td>\n        <td id=\"LC2257\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2258\" class=\"blob-num js-line-number\" data-line-number=\"2258\"></td>\n        <td id=\"LC2258\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2259\" class=\"blob-num js-line-number\" data-line-number=\"2259\"></td>\n        <td id=\"LC2259\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">extractError</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2260\" class=\"blob-num js-line-number\" data-line-number=\"2260\"></td>\n        <td id=\"LC2260\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> error <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L2261\" class=\"blob-num js-line-number\" data-line-number=\"2261\"></td>\n        <td id=\"LC2261\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> httpResponse <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2262\" class=\"blob-num js-line-number\" data-line-number=\"2262\"></td>\n        <td id=\"LC2262\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2263\" class=\"blob-num js-line-number\" data-line-number=\"2263\"></td>\n        <td id=\"LC2263\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>x-amzn-errortype<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>UnknownError<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2264\" class=\"blob-num js-line-number\" data-line-number=\"2264\"></td>\n        <td id=\"LC2264\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2265\" class=\"blob-num js-line-number\" data-line-number=\"2265\"></td>\n        <td id=\"LC2265\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span>)[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2266\" class=\"blob-num js-line-number\" data-line-number=\"2266\"></td>\n        <td id=\"LC2266\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2267\" class=\"blob-num js-line-number\" data-line-number=\"2267\"></td>\n        <td id=\"LC2267\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2268\" class=\"blob-num js-line-number\" data-line-number=\"2268\"></td>\n        <td id=\"LC2268\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">body</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2269\" class=\"blob-num js-line-number\" data-line-number=\"2269\"></td>\n        <td id=\"LC2269\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> e <span class=\"pl-k\">=</span> <span class=\"pl-c1\">JSON</span>.<span class=\"pl-c1\">parse</span>(<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">body</span>.<span class=\"pl-c1\">toString</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L2270\" class=\"blob-num js-line-number\" data-line-number=\"2270\"></td>\n        <td id=\"LC2270\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">e</span>.<span class=\"pl-smi\">__type</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">e</span>.<span class=\"pl-c1\">code</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2271\" class=\"blob-num js-line-number\" data-line-number=\"2271\"></td>\n        <td id=\"LC2271\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">=</span> (<span class=\"pl-smi\">e</span>.<span class=\"pl-smi\">__type</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">e</span>.<span class=\"pl-c1\">code</span>).<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">pop</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2272\" class=\"blob-num js-line-number\" data-line-number=\"2272\"></td>\n        <td id=\"LC2272\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2273\" class=\"blob-num js-line-number\" data-line-number=\"2273\"></td>\n        <td id=\"LC2273\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RequestEntityTooLarge<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2274\" class=\"blob-num js-line-number\" data-line-number=\"2274\"></td>\n        <td id=\"LC2274\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Request body must be less than 1 MB<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2275\" class=\"blob-num js-line-number\" data-line-number=\"2275\"></td>\n        <td id=\"LC2275\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2276\" class=\"blob-num js-line-number\" data-line-number=\"2276\"></td>\n        <td id=\"LC2276\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">=</span> (<span class=\"pl-smi\">e</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">e</span>.<span class=\"pl-smi\">Message</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">null</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2277\" class=\"blob-num js-line-number\" data-line-number=\"2277\"></td>\n        <td id=\"LC2277\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2278\" class=\"blob-num js-line-number\" data-line-number=\"2278\"></td>\n        <td id=\"LC2278\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2279\" class=\"blob-num js-line-number\" data-line-number=\"2279\"></td>\n        <td id=\"LC2279\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">statusCode</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">statusCode</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2280\" class=\"blob-num js-line-number\" data-line-number=\"2280\"></td>\n        <td id=\"LC2280\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">statusCode</span>.<span class=\"pl-c1\">toString</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2281\" class=\"blob-num js-line-number\" data-line-number=\"2281\"></td>\n        <td id=\"LC2281\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2282\" class=\"blob-num js-line-number\" data-line-number=\"2282\"></td>\n        <td id=\"LC2282\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2283\" class=\"blob-num js-line-number\" data-line-number=\"2283\"></td>\n        <td id=\"LC2283\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), error);</td>\n      </tr>\n      <tr>\n        <td id=\"L2284\" class=\"blob-num js-line-number\" data-line-number=\"2284\"></td>\n        <td id=\"LC2284\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2285\" class=\"blob-num js-line-number\" data-line-number=\"2285\"></td>\n        <td id=\"LC2285\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2286\" class=\"blob-num js-line-number\" data-line-number=\"2286\"></td>\n        <td id=\"LC2286\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">extractData</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2287\" class=\"blob-num js-line-number\" data-line-number=\"2287\"></td>\n        <td id=\"LC2287\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> body <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">body</span>.<span class=\"pl-c1\">toString</span>() <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>{}<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2288\" class=\"blob-num js-line-number\" data-line-number=\"2288\"></td>\n        <td id=\"LC2288\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">convertResponseTypes</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">false</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2289\" class=\"blob-num js-line-number\" data-line-number=\"2289\"></td>\n        <td id=\"LC2289\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">JSON</span>.<span class=\"pl-c1\">parse</span>(body);</td>\n      </tr>\n      <tr>\n        <td id=\"L2290\" class=\"blob-num js-line-number\" data-line-number=\"2290\"></td>\n        <td id=\"LC2290\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2291\" class=\"blob-num js-line-number\" data-line-number=\"2291\"></td>\n        <td id=\"LC2291\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> operation <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">operation</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2292\" class=\"blob-num js-line-number\" data-line-number=\"2292\"></td>\n        <td id=\"LC2292\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> shape <span class=\"pl-k\">=</span> <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">output</span> <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L2293\" class=\"blob-num js-line-number\" data-line-number=\"2293\"></td>\n        <td id=\"LC2293\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parser <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">JsonParser</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2294\" class=\"blob-num js-line-number\" data-line-number=\"2294\"></td>\n        <td id=\"LC2294\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parser</span>.<span class=\"pl-c1\">parse</span>(body, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L2295\" class=\"blob-num js-line-number\" data-line-number=\"2295\"></td>\n        <td id=\"LC2295\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2296\" class=\"blob-num js-line-number\" data-line-number=\"2296\"></td>\n        <td id=\"LC2296\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2297\" class=\"blob-num js-line-number\" data-line-number=\"2297\"></td>\n        <td id=\"LC2297\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2298\" class=\"blob-num js-line-number\" data-line-number=\"2298\"></td>\n        <td id=\"LC2298\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2299\" class=\"blob-num js-line-number\" data-line-number=\"2299\"></td>\n        <td id=\"LC2299\" class=\"blob-code blob-code-inner js-file-line\">  buildRequest<span class=\"pl-k\">:</span> buildRequest,</td>\n      </tr>\n      <tr>\n        <td id=\"L2300\" class=\"blob-num js-line-number\" data-line-number=\"2300\"></td>\n        <td id=\"LC2300\" class=\"blob-code blob-code-inner js-file-line\">  extractError<span class=\"pl-k\">:</span> extractError,</td>\n      </tr>\n      <tr>\n        <td id=\"L2301\" class=\"blob-num js-line-number\" data-line-number=\"2301\"></td>\n        <td id=\"LC2301\" class=\"blob-code blob-code-inner js-file-line\">  extractData<span class=\"pl-k\">:</span> extractData</td>\n      </tr>\n      <tr>\n        <td id=\"L2302\" class=\"blob-num js-line-number\" data-line-number=\"2302\"></td>\n        <td id=\"LC2302\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L2303\" class=\"blob-num js-line-number\" data-line-number=\"2303\"></td>\n        <td id=\"LC2303\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2304\" class=\"blob-num js-line-number\" data-line-number=\"2304\"></td>\n        <td id=\"LC2304\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../json/builder<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">13</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../json/parser<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">14</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>}],<span class=\"pl-c1\">23</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L2305\" class=\"blob-num js-line-number\" data-line-number=\"2305\"></td>\n        <td id=\"LC2305\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2306\" class=\"blob-num js-line-number\" data-line-number=\"2306\"></td>\n        <td id=\"LC2306\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2307\" class=\"blob-num js-line-number\" data-line-number=\"2307\"></td>\n        <td id=\"LC2307\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> QueryParamSerializer <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../query/query_param_serializer<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2308\" class=\"blob-num js-line-number\" data-line-number=\"2308\"></td>\n        <td id=\"LC2308\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Shape <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../model/shape<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2309\" class=\"blob-num js-line-number\" data-line-number=\"2309\"></td>\n        <td id=\"LC2309\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2310\" class=\"blob-num js-line-number\" data-line-number=\"2310\"></td>\n        <td id=\"LC2310\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">buildRequest</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2311\" class=\"blob-num js-line-number\" data-line-number=\"2311\"></td>\n        <td id=\"LC2311\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> operation <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2312\" class=\"blob-num js-line-number\" data-line-number=\"2312\"></td>\n        <td id=\"LC2312\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> httpRequest <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2313\" class=\"blob-num js-line-number\" data-line-number=\"2313\"></td>\n        <td id=\"LC2313\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Type<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2314\" class=\"blob-num js-line-number\" data-line-number=\"2314\"></td>\n        <td id=\"LC2314\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>application/x-www-form-urlencoded; charset=utf-8<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2315\" class=\"blob-num js-line-number\" data-line-number=\"2315\"></td>\n        <td id=\"LC2315\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">params</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2316\" class=\"blob-num js-line-number\" data-line-number=\"2316\"></td>\n        <td id=\"LC2316\" class=\"blob-code blob-code-inner js-file-line\">    Version<span class=\"pl-k\">:</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">apiVersion</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2317\" class=\"blob-num js-line-number\" data-line-number=\"2317\"></td>\n        <td id=\"LC2317\" class=\"blob-code blob-code-inner js-file-line\">    Action<span class=\"pl-k\">:</span> <span class=\"pl-smi\">operation</span>.<span class=\"pl-c1\">name</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2318\" class=\"blob-num js-line-number\" data-line-number=\"2318\"></td>\n        <td id=\"LC2318\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L2319\" class=\"blob-num js-line-number\" data-line-number=\"2319\"></td>\n        <td id=\"LC2319\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2320\" class=\"blob-num js-line-number\" data-line-number=\"2320\"></td>\n        <td id=\"LC2320\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> builder <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">QueryParamSerializer</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2321\" class=\"blob-num js-line-number\" data-line-number=\"2321\"></td>\n        <td id=\"LC2321\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">builder</span>.<span class=\"pl-en\">serialize</span>(<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">operation</span>.<span class=\"pl-c1\">input</span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2322\" class=\"blob-num js-line-number\" data-line-number=\"2322\"></td>\n        <td id=\"LC2322\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">params</span>[name] <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L2323\" class=\"blob-num js-line-number\" data-line-number=\"2323\"></td>\n        <td id=\"LC2323\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L2324\" class=\"blob-num js-line-number\" data-line-number=\"2324\"></td>\n        <td id=\"LC2324\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">queryParamsToString</span>(<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">params</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2325\" class=\"blob-num js-line-number\" data-line-number=\"2325\"></td>\n        <td id=\"LC2325\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2326\" class=\"blob-num js-line-number\" data-line-number=\"2326\"></td>\n        <td id=\"LC2326\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2327\" class=\"blob-num js-line-number\" data-line-number=\"2327\"></td>\n        <td id=\"LC2327\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">extractError</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2328\" class=\"blob-num js-line-number\" data-line-number=\"2328\"></td>\n        <td id=\"LC2328\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> data, body <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">body</span>.<span class=\"pl-c1\">toString</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2329\" class=\"blob-num js-line-number\" data-line-number=\"2329\"></td>\n        <td id=\"LC2329\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">body</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;UnknownOperationException<span class=\"pl-pds\">&#39;</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2330\" class=\"blob-num js-line-number\" data-line-number=\"2330\"></td>\n        <td id=\"LC2330\" class=\"blob-code blob-code-inner js-file-line\">    data <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2331\" class=\"blob-num js-line-number\" data-line-number=\"2331\"></td>\n        <td id=\"LC2331\" class=\"blob-code blob-code-inner js-file-line\">      Code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>UnknownOperation<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2332\" class=\"blob-num js-line-number\" data-line-number=\"2332\"></td>\n        <td id=\"LC2332\" class=\"blob-code blob-code-inner js-file-line\">      Message<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Unknown operation <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">operation</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2333\" class=\"blob-num js-line-number\" data-line-number=\"2333\"></td>\n        <td id=\"LC2333\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L2334\" class=\"blob-num js-line-number\" data-line-number=\"2334\"></td>\n        <td id=\"LC2334\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2335\" class=\"blob-num js-line-number\" data-line-number=\"2335\"></td>\n        <td id=\"LC2335\" class=\"blob-code blob-code-inner js-file-line\">    data <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.XML</span>.<span class=\"pl-en\">Parser</span>().<span class=\"pl-c1\">parse</span>(body);</td>\n      </tr>\n      <tr>\n        <td id=\"L2336\" class=\"blob-num js-line-number\" data-line-number=\"2336\"></td>\n        <td id=\"LC2336\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2337\" class=\"blob-num js-line-number\" data-line-number=\"2337\"></td>\n        <td id=\"LC2337\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2338\" class=\"blob-num js-line-number\" data-line-number=\"2338\"></td>\n        <td id=\"LC2338\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">requestId</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">requestId</span>) <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">requestId</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">requestId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2339\" class=\"blob-num js-line-number\" data-line-number=\"2339\"></td>\n        <td id=\"LC2339\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Errors</span>) data <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Errors</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2340\" class=\"blob-num js-line-number\" data-line-number=\"2340\"></td>\n        <td id=\"LC2340\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Error</span>) data <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Error</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2341\" class=\"blob-num js-line-number\" data-line-number=\"2341\"></td>\n        <td id=\"LC2341\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Code</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2342\" class=\"blob-num js-line-number\" data-line-number=\"2342\"></td>\n        <td id=\"LC2342\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), {</td>\n      </tr>\n      <tr>\n        <td id=\"L2343\" class=\"blob-num js-line-number\" data-line-number=\"2343\"></td>\n        <td id=\"LC2343\" class=\"blob-code blob-code-inner js-file-line\">      code<span class=\"pl-k\">:</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Code</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2344\" class=\"blob-num js-line-number\" data-line-number=\"2344\"></td>\n        <td id=\"LC2344\" class=\"blob-code blob-code-inner js-file-line\">      message<span class=\"pl-k\">:</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Message</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2345\" class=\"blob-num js-line-number\" data-line-number=\"2345\"></td>\n        <td id=\"LC2345\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L2346\" class=\"blob-num js-line-number\" data-line-number=\"2346\"></td>\n        <td id=\"LC2346\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2347\" class=\"blob-num js-line-number\" data-line-number=\"2347\"></td>\n        <td id=\"LC2347\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), {</td>\n      </tr>\n      <tr>\n        <td id=\"L2348\" class=\"blob-num js-line-number\" data-line-number=\"2348\"></td>\n        <td id=\"LC2348\" class=\"blob-code blob-code-inner js-file-line\">      code<span class=\"pl-k\">:</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">statusCode</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2349\" class=\"blob-num js-line-number\" data-line-number=\"2349\"></td>\n        <td id=\"LC2349\" class=\"blob-code blob-code-inner js-file-line\">      message<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2350\" class=\"blob-num js-line-number\" data-line-number=\"2350\"></td>\n        <td id=\"LC2350\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L2351\" class=\"blob-num js-line-number\" data-line-number=\"2351\"></td>\n        <td id=\"LC2351\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2352\" class=\"blob-num js-line-number\" data-line-number=\"2352\"></td>\n        <td id=\"LC2352\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2353\" class=\"blob-num js-line-number\" data-line-number=\"2353\"></td>\n        <td id=\"LC2353\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2354\" class=\"blob-num js-line-number\" data-line-number=\"2354\"></td>\n        <td id=\"LC2354\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">extractData</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2355\" class=\"blob-num js-line-number\" data-line-number=\"2355\"></td>\n        <td id=\"LC2355\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> req <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2356\" class=\"blob-num js-line-number\" data-line-number=\"2356\"></td>\n        <td id=\"LC2356\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> operation <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2357\" class=\"blob-num js-line-number\" data-line-number=\"2357\"></td>\n        <td id=\"LC2357\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> shape <span class=\"pl-k\">=</span> <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">output</span> <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L2358\" class=\"blob-num js-line-number\" data-line-number=\"2358\"></td>\n        <td id=\"LC2358\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> origRules <span class=\"pl-k\">=</span> shape;</td>\n      </tr>\n      <tr>\n        <td id=\"L2359\" class=\"blob-num js-line-number\" data-line-number=\"2359\"></td>\n        <td id=\"LC2359\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2360\" class=\"blob-num js-line-number\" data-line-number=\"2360\"></td>\n        <td id=\"LC2360\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">origRules</span>.<span class=\"pl-smi\">resultWrapper</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2361\" class=\"blob-num js-line-number\" data-line-number=\"2361\"></td>\n        <td id=\"LC2361\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> tmp <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>({type<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L2362\" class=\"blob-num js-line-number\" data-line-number=\"2362\"></td>\n        <td id=\"LC2362\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">tmp</span>.<span class=\"pl-smi\">members</span>[<span class=\"pl-smi\">origRules</span>.<span class=\"pl-smi\">resultWrapper</span>] <span class=\"pl-k\">=</span> shape;</td>\n      </tr>\n      <tr>\n        <td id=\"L2363\" class=\"blob-num js-line-number\" data-line-number=\"2363\"></td>\n        <td id=\"LC2363\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">tmp</span>.<span class=\"pl-smi\">memberNames</span> <span class=\"pl-k\">=</span> [<span class=\"pl-smi\">origRules</span>.<span class=\"pl-smi\">resultWrapper</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2364\" class=\"blob-num js-line-number\" data-line-number=\"2364\"></td>\n        <td id=\"LC2364\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">property</span>(shape, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>name<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">resultWrapper</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2365\" class=\"blob-num js-line-number\" data-line-number=\"2365\"></td>\n        <td id=\"LC2365\" class=\"blob-code blob-code-inner js-file-line\">    shape <span class=\"pl-k\">=</span> tmp;</td>\n      </tr>\n      <tr>\n        <td id=\"L2366\" class=\"blob-num js-line-number\" data-line-number=\"2366\"></td>\n        <td id=\"LC2366\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2367\" class=\"blob-num js-line-number\" data-line-number=\"2367\"></td>\n        <td id=\"LC2367\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2368\" class=\"blob-num js-line-number\" data-line-number=\"2368\"></td>\n        <td id=\"LC2368\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> parser <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.XML</span>.<span class=\"pl-en\">Parser</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2369\" class=\"blob-num js-line-number\" data-line-number=\"2369\"></td>\n        <td id=\"LC2369\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2370\" class=\"blob-num js-line-number\" data-line-number=\"2370\"></td>\n        <td id=\"LC2370\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (shape <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>.<span class=\"pl-smi\">_XAMZRequestId</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2371\" class=\"blob-num js-line-number\" data-line-number=\"2371\"></td>\n        <td id=\"LC2371\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> requestIdShape <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Shape</span>.<span class=\"pl-en\">create</span>(</td>\n      </tr>\n      <tr>\n        <td id=\"L2372\" class=\"blob-num js-line-number\" data-line-number=\"2372\"></td>\n        <td id=\"LC2372\" class=\"blob-code blob-code-inner js-file-line\">      { type<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span> },</td>\n      </tr>\n      <tr>\n        <td id=\"L2373\" class=\"blob-num js-line-number\" data-line-number=\"2373\"></td>\n        <td id=\"LC2373\" class=\"blob-code blob-code-inner js-file-line\">      { api<span class=\"pl-k\">:</span> { protocol<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>query<span class=\"pl-pds\">&#39;</span></span> } },</td>\n      </tr>\n      <tr>\n        <td id=\"L2374\" class=\"blob-num js-line-number\" data-line-number=\"2374\"></td>\n        <td id=\"LC2374\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>requestId<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2375\" class=\"blob-num js-line-number\" data-line-number=\"2375\"></td>\n        <td id=\"LC2375\" class=\"blob-code blob-code-inner js-file-line\">    );</td>\n      </tr>\n      <tr>\n        <td id=\"L2376\" class=\"blob-num js-line-number\" data-line-number=\"2376\"></td>\n        <td id=\"LC2376\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>.<span class=\"pl-smi\">_XAMZRequestId</span> <span class=\"pl-k\">=</span> requestIdShape;</td>\n      </tr>\n      <tr>\n        <td id=\"L2377\" class=\"blob-num js-line-number\" data-line-number=\"2377\"></td>\n        <td id=\"LC2377\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2378\" class=\"blob-num js-line-number\" data-line-number=\"2378\"></td>\n        <td id=\"LC2378\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2379\" class=\"blob-num js-line-number\" data-line-number=\"2379\"></td>\n        <td id=\"LC2379\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> data <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parser</span>.<span class=\"pl-c1\">parse</span>(<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">body</span>.<span class=\"pl-c1\">toString</span>(), shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L2380\" class=\"blob-num js-line-number\" data-line-number=\"2380\"></td>\n        <td id=\"LC2380\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">requestId</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">_XAMZRequestId</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">requestId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2381\" class=\"blob-num js-line-number\" data-line-number=\"2381\"></td>\n        <td id=\"LC2381\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2382\" class=\"blob-num js-line-number\" data-line-number=\"2382\"></td>\n        <td id=\"LC2382\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">_XAMZRequestId</span>) <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">_XAMZRequestId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2383\" class=\"blob-num js-line-number\" data-line-number=\"2383\"></td>\n        <td id=\"LC2383\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2384\" class=\"blob-num js-line-number\" data-line-number=\"2384\"></td>\n        <td id=\"LC2384\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">origRules</span>.<span class=\"pl-smi\">resultWrapper</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2385\" class=\"blob-num js-line-number\" data-line-number=\"2385\"></td>\n        <td id=\"LC2385\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (data[<span class=\"pl-smi\">origRules</span>.<span class=\"pl-smi\">resultWrapper</span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2386\" class=\"blob-num js-line-number\" data-line-number=\"2386\"></td>\n        <td id=\"LC2386\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">update</span>(data, data[<span class=\"pl-smi\">origRules</span>.<span class=\"pl-smi\">resultWrapper</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L2387\" class=\"blob-num js-line-number\" data-line-number=\"2387\"></td>\n        <td id=\"LC2387\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">delete</span> data[<span class=\"pl-smi\">origRules</span>.<span class=\"pl-smi\">resultWrapper</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2388\" class=\"blob-num js-line-number\" data-line-number=\"2388\"></td>\n        <td id=\"LC2388\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2389\" class=\"blob-num js-line-number\" data-line-number=\"2389\"></td>\n        <td id=\"LC2389\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2390\" class=\"blob-num js-line-number\" data-line-number=\"2390\"></td>\n        <td id=\"LC2390\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2391\" class=\"blob-num js-line-number\" data-line-number=\"2391\"></td>\n        <td id=\"LC2391\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> data;</td>\n      </tr>\n      <tr>\n        <td id=\"L2392\" class=\"blob-num js-line-number\" data-line-number=\"2392\"></td>\n        <td id=\"LC2392\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2393\" class=\"blob-num js-line-number\" data-line-number=\"2393\"></td>\n        <td id=\"LC2393\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2394\" class=\"blob-num js-line-number\" data-line-number=\"2394\"></td>\n        <td id=\"LC2394\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2395\" class=\"blob-num js-line-number\" data-line-number=\"2395\"></td>\n        <td id=\"LC2395\" class=\"blob-code blob-code-inner js-file-line\">  buildRequest<span class=\"pl-k\">:</span> buildRequest,</td>\n      </tr>\n      <tr>\n        <td id=\"L2396\" class=\"blob-num js-line-number\" data-line-number=\"2396\"></td>\n        <td id=\"LC2396\" class=\"blob-code blob-code-inner js-file-line\">  extractError<span class=\"pl-k\">:</span> extractError,</td>\n      </tr>\n      <tr>\n        <td id=\"L2397\" class=\"blob-num js-line-number\" data-line-number=\"2397\"></td>\n        <td id=\"LC2397\" class=\"blob-code blob-code-inner js-file-line\">  extractData<span class=\"pl-k\">:</span> extractData</td>\n      </tr>\n      <tr>\n        <td id=\"L2398\" class=\"blob-num js-line-number\" data-line-number=\"2398\"></td>\n        <td id=\"LC2398\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L2399\" class=\"blob-num js-line-number\" data-line-number=\"2399\"></td>\n        <td id=\"LC2399\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2400\" class=\"blob-num js-line-number\" data-line-number=\"2400\"></td>\n        <td id=\"LC2400\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../model/shape<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">20</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../query/query_param_serializer<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">27</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>}],<span class=\"pl-c1\">24</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L2401\" class=\"blob-num js-line-number\" data-line-number=\"2401\"></td>\n        <td id=\"LC2401\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2402\" class=\"blob-num js-line-number\" data-line-number=\"2402\"></td>\n        <td id=\"LC2402\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2403\" class=\"blob-num js-line-number\" data-line-number=\"2403\"></td>\n        <td id=\"LC2403\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">populateMethod</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2404\" class=\"blob-num js-line-number\" data-line-number=\"2404\"></td>\n        <td id=\"LC2404\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">method</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>].<span class=\"pl-smi\">httpMethod</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2405\" class=\"blob-num js-line-number\" data-line-number=\"2405\"></td>\n        <td id=\"LC2405\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2406\" class=\"blob-num js-line-number\" data-line-number=\"2406\"></td>\n        <td id=\"LC2406\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2407\" class=\"blob-num js-line-number\" data-line-number=\"2407\"></td>\n        <td id=\"LC2407\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">populateURI</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2408\" class=\"blob-num js-line-number\" data-line-number=\"2408\"></td>\n        <td id=\"LC2408\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> operation <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2409\" class=\"blob-num js-line-number\" data-line-number=\"2409\"></td>\n        <td id=\"LC2409\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> input <span class=\"pl-k\">=</span> <span class=\"pl-smi\">operation</span>.<span class=\"pl-c1\">input</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2410\" class=\"blob-num js-line-number\" data-line-number=\"2410\"></td>\n        <td id=\"LC2410\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> uri <span class=\"pl-k\">=</span> [<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">endpoint</span>.<span class=\"pl-smi\">path</span>, <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">httpPath</span>].<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2411\" class=\"blob-num js-line-number\" data-line-number=\"2411\"></td>\n        <td id=\"LC2411\" class=\"blob-code blob-code-inner js-file-line\">  uri <span class=\"pl-k\">=</span> <span class=\"pl-smi\">uri</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\/</span><span class=\"pl-k\">+</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2412\" class=\"blob-num js-line-number\" data-line-number=\"2412\"></td>\n        <td id=\"LC2412\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2413\" class=\"blob-num js-line-number\" data-line-number=\"2413\"></td>\n        <td id=\"LC2413\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> queryString <span class=\"pl-k\">=</span> {}, queryStringSet <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2414\" class=\"blob-num js-line-number\" data-line-number=\"2414\"></td>\n        <td id=\"LC2414\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-smi\">input</span>.<span class=\"pl-smi\">members</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">member</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2415\" class=\"blob-num js-line-number\" data-line-number=\"2415\"></td>\n        <td id=\"LC2415\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> paramValue <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">params</span>[name];</td>\n      </tr>\n      <tr>\n        <td id=\"L2416\" class=\"blob-num js-line-number\" data-line-number=\"2416\"></td>\n        <td id=\"LC2416\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (paramValue <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> paramValue <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2417\" class=\"blob-num js-line-number\" data-line-number=\"2417\"></td>\n        <td id=\"LC2417\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>uri<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2418\" class=\"blob-num js-line-number\" data-line-number=\"2418\"></td>\n        <td id=\"LC2418\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> regex <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">RegExp</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\\\</span>{<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>(<span class=\"pl-cce\">\\\\</span>+)?<span class=\"pl-cce\">\\\\</span>}<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2419\" class=\"blob-num js-line-number\" data-line-number=\"2419\"></td>\n        <td id=\"LC2419\" class=\"blob-code blob-code-inner js-file-line\">      uri <span class=\"pl-k\">=</span> <span class=\"pl-smi\">uri</span>.<span class=\"pl-c1\">replace</span>(regex, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">_</span>, <span class=\"pl-smi\">plus</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2420\" class=\"blob-num js-line-number\" data-line-number=\"2420\"></td>\n        <td id=\"LC2420\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> fn <span class=\"pl-k\">=</span> plus <span class=\"pl-k\">?</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">uriEscapePath</span> <span class=\"pl-k\">:</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">uriEscape</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2421\" class=\"blob-num js-line-number\" data-line-number=\"2421\"></td>\n        <td id=\"LC2421\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-en\">fn</span>(<span class=\"pl-c1\">String</span>(paramValue));</td>\n      </tr>\n      <tr>\n        <td id=\"L2422\" class=\"blob-num js-line-number\" data-line-number=\"2422\"></td>\n        <td id=\"LC2422\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L2423\" class=\"blob-num js-line-number\" data-line-number=\"2423\"></td>\n        <td id=\"LC2423\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>querystring<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2424\" class=\"blob-num js-line-number\" data-line-number=\"2424\"></td>\n        <td id=\"LC2424\" class=\"blob-code blob-code-inner js-file-line\">      queryStringSet <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2425\" class=\"blob-num js-line-number\" data-line-number=\"2425\"></td>\n        <td id=\"LC2425\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2426\" class=\"blob-num js-line-number\" data-line-number=\"2426\"></td>\n        <td id=\"LC2426\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2427\" class=\"blob-num js-line-number\" data-line-number=\"2427\"></td>\n        <td id=\"LC2427\" class=\"blob-code blob-code-inner js-file-line\">        queryString[<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">name</span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">paramValue</span>.<span class=\"pl-en\">map</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2428\" class=\"blob-num js-line-number\" data-line-number=\"2428\"></td>\n        <td id=\"LC2428\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">uriEscape</span>(<span class=\"pl-c1\">String</span>(val));</td>\n      </tr>\n      <tr>\n        <td id=\"L2429\" class=\"blob-num js-line-number\" data-line-number=\"2429\"></td>\n        <td id=\"LC2429\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L2430\" class=\"blob-num js-line-number\" data-line-number=\"2430\"></td>\n        <td id=\"LC2430\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2431\" class=\"blob-num js-line-number\" data-line-number=\"2431\"></td>\n        <td id=\"LC2431\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(paramValue, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2432\" class=\"blob-num js-line-number\" data-line-number=\"2432\"></td>\n        <td id=\"LC2432\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">Array</span>.<span class=\"pl-en\">isArray</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2433\" class=\"blob-num js-line-number\" data-line-number=\"2433\"></td>\n        <td id=\"LC2433\" class=\"blob-code blob-code-inner js-file-line\">            queryString[key] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-en\">map</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2434\" class=\"blob-num js-line-number\" data-line-number=\"2434\"></td>\n        <td id=\"LC2434\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">uriEscape</span>(<span class=\"pl-c1\">String</span>(val));</td>\n      </tr>\n      <tr>\n        <td id=\"L2435\" class=\"blob-num js-line-number\" data-line-number=\"2435\"></td>\n        <td id=\"LC2435\" class=\"blob-code blob-code-inner js-file-line\">            });</td>\n      </tr>\n      <tr>\n        <td id=\"L2436\" class=\"blob-num js-line-number\" data-line-number=\"2436\"></td>\n        <td id=\"LC2436\" class=\"blob-code blob-code-inner js-file-line\">          } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2437\" class=\"blob-num js-line-number\" data-line-number=\"2437\"></td>\n        <td id=\"LC2437\" class=\"blob-code blob-code-inner js-file-line\">            queryString[key] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">uriEscape</span>(<span class=\"pl-c1\">String</span>(value));</td>\n      </tr>\n      <tr>\n        <td id=\"L2438\" class=\"blob-num js-line-number\" data-line-number=\"2438\"></td>\n        <td id=\"LC2438\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L2439\" class=\"blob-num js-line-number\" data-line-number=\"2439\"></td>\n        <td id=\"LC2439\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L2440\" class=\"blob-num js-line-number\" data-line-number=\"2440\"></td>\n        <td id=\"LC2440\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2441\" class=\"blob-num js-line-number\" data-line-number=\"2441\"></td>\n        <td id=\"LC2441\" class=\"blob-code blob-code-inner js-file-line\">        queryString[<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">name</span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">uriEscape</span>(<span class=\"pl-c1\">String</span>(paramValue));</td>\n      </tr>\n      <tr>\n        <td id=\"L2442\" class=\"blob-num js-line-number\" data-line-number=\"2442\"></td>\n        <td id=\"LC2442\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2443\" class=\"blob-num js-line-number\" data-line-number=\"2443\"></td>\n        <td id=\"LC2443\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2444\" class=\"blob-num js-line-number\" data-line-number=\"2444\"></td>\n        <td id=\"LC2444\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L2445\" class=\"blob-num js-line-number\" data-line-number=\"2445\"></td>\n        <td id=\"LC2445\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2446\" class=\"blob-num js-line-number\" data-line-number=\"2446\"></td>\n        <td id=\"LC2446\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (queryStringSet) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2447\" class=\"blob-num js-line-number\" data-line-number=\"2447\"></td>\n        <td id=\"LC2447\" class=\"blob-code blob-code-inner js-file-line\">    uri <span class=\"pl-k\">+=</span> (<span class=\"pl-smi\">uri</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2448\" class=\"blob-num js-line-number\" data-line-number=\"2448\"></td>\n        <td id=\"LC2448\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L2449\" class=\"blob-num js-line-number\" data-line-number=\"2449\"></td>\n        <td id=\"LC2449\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(<span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(queryString).<span class=\"pl-c1\">sort</span>(), <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2450\" class=\"blob-num js-line-number\" data-line-number=\"2450\"></td>\n        <td id=\"LC2450\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-c1\">Array</span>.<span class=\"pl-en\">isArray</span>(queryString[key])) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2451\" class=\"blob-num js-line-number\" data-line-number=\"2451\"></td>\n        <td id=\"LC2451\" class=\"blob-code blob-code-inner js-file-line\">        queryString[key] <span class=\"pl-k\">=</span> [queryString[key]];</td>\n      </tr>\n      <tr>\n        <td id=\"L2452\" class=\"blob-num js-line-number\" data-line-number=\"2452\"></td>\n        <td id=\"LC2452\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2453\" class=\"blob-num js-line-number\" data-line-number=\"2453\"></td>\n        <td id=\"LC2453\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> queryString[key].<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2454\" class=\"blob-num js-line-number\" data-line-number=\"2454\"></td>\n        <td id=\"LC2454\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">uriEscape</span>(<span class=\"pl-c1\">String</span>(key)) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> queryString[key][i]);</td>\n      </tr>\n      <tr>\n        <td id=\"L2455\" class=\"blob-num js-line-number\" data-line-number=\"2455\"></td>\n        <td id=\"LC2455\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2456\" class=\"blob-num js-line-number\" data-line-number=\"2456\"></td>\n        <td id=\"LC2456\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L2457\" class=\"blob-num js-line-number\" data-line-number=\"2457\"></td>\n        <td id=\"LC2457\" class=\"blob-code blob-code-inner js-file-line\">    uri <span class=\"pl-k\">+=</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2458\" class=\"blob-num js-line-number\" data-line-number=\"2458\"></td>\n        <td id=\"LC2458\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2459\" class=\"blob-num js-line-number\" data-line-number=\"2459\"></td>\n        <td id=\"LC2459\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2460\" class=\"blob-num js-line-number\" data-line-number=\"2460\"></td>\n        <td id=\"LC2460\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> uri;</td>\n      </tr>\n      <tr>\n        <td id=\"L2461\" class=\"blob-num js-line-number\" data-line-number=\"2461\"></td>\n        <td id=\"LC2461\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2462\" class=\"blob-num js-line-number\" data-line-number=\"2462\"></td>\n        <td id=\"LC2462\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2463\" class=\"blob-num js-line-number\" data-line-number=\"2463\"></td>\n        <td id=\"LC2463\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">populateHeaders</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2464\" class=\"blob-num js-line-number\" data-line-number=\"2464\"></td>\n        <td id=\"LC2464\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> operation <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2465\" class=\"blob-num js-line-number\" data-line-number=\"2465\"></td>\n        <td id=\"LC2465\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-smi\">operation</span>.<span class=\"pl-c1\">input</span>.<span class=\"pl-smi\">members</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">member</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2466\" class=\"blob-num js-line-number\" data-line-number=\"2466\"></td>\n        <td id=\"LC2466\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">params</span>[name];</td>\n      </tr>\n      <tr>\n        <td id=\"L2467\" class=\"blob-num js-line-number\" data-line-number=\"2467\"></td>\n        <td id=\"LC2467\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2468\" class=\"blob-num js-line-number\" data-line-number=\"2468\"></td>\n        <td id=\"LC2468\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2469\" class=\"blob-num js-line-number\" data-line-number=\"2469\"></td>\n        <td id=\"LC2469\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>headers<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2470\" class=\"blob-num js-line-number\" data-line-number=\"2470\"></td>\n        <td id=\"LC2470\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(value, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">memberValue</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2471\" class=\"blob-num js-line-number\" data-line-number=\"2471\"></td>\n        <td id=\"LC2471\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">+</span> key] <span class=\"pl-k\">=</span> memberValue;</td>\n      </tr>\n      <tr>\n        <td id=\"L2472\" class=\"blob-num js-line-number\" data-line-number=\"2472\"></td>\n        <td id=\"LC2472\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L2473\" class=\"blob-num js-line-number\" data-line-number=\"2473\"></td>\n        <td id=\"LC2473\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>header<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2474\" class=\"blob-num js-line-number\" data-line-number=\"2474\"></td>\n        <td id=\"LC2474\" class=\"blob-code blob-code-inner js-file-line\">      value <span class=\"pl-k\">=</span> <span class=\"pl-smi\">member</span>.<span class=\"pl-en\">toWireFormat</span>(value).<span class=\"pl-c1\">toString</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2475\" class=\"blob-num js-line-number\" data-line-number=\"2475\"></td>\n        <td id=\"LC2475\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">name</span>] <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L2476\" class=\"blob-num js-line-number\" data-line-number=\"2476\"></td>\n        <td id=\"LC2476\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2477\" class=\"blob-num js-line-number\" data-line-number=\"2477\"></td>\n        <td id=\"LC2477\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L2478\" class=\"blob-num js-line-number\" data-line-number=\"2478\"></td>\n        <td id=\"LC2478\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2479\" class=\"blob-num js-line-number\" data-line-number=\"2479\"></td>\n        <td id=\"LC2479\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2480\" class=\"blob-num js-line-number\" data-line-number=\"2480\"></td>\n        <td id=\"LC2480\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">buildRequest</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2481\" class=\"blob-num js-line-number\" data-line-number=\"2481\"></td>\n        <td id=\"LC2481\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">populateMethod</span>(req);</td>\n      </tr>\n      <tr>\n        <td id=\"L2482\" class=\"blob-num js-line-number\" data-line-number=\"2482\"></td>\n        <td id=\"LC2482\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">populateURI</span>(req);</td>\n      </tr>\n      <tr>\n        <td id=\"L2483\" class=\"blob-num js-line-number\" data-line-number=\"2483\"></td>\n        <td id=\"LC2483\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">populateHeaders</span>(req);</td>\n      </tr>\n      <tr>\n        <td id=\"L2484\" class=\"blob-num js-line-number\" data-line-number=\"2484\"></td>\n        <td id=\"LC2484\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2485\" class=\"blob-num js-line-number\" data-line-number=\"2485\"></td>\n        <td id=\"LC2485\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2486\" class=\"blob-num js-line-number\" data-line-number=\"2486\"></td>\n        <td id=\"LC2486\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">extractError</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L2487\" class=\"blob-num js-line-number\" data-line-number=\"2487\"></td>\n        <td id=\"LC2487\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2488\" class=\"blob-num js-line-number\" data-line-number=\"2488\"></td>\n        <td id=\"LC2488\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2489\" class=\"blob-num js-line-number\" data-line-number=\"2489\"></td>\n        <td id=\"LC2489\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">extractData</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2490\" class=\"blob-num js-line-number\" data-line-number=\"2490\"></td>\n        <td id=\"LC2490\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> req <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2491\" class=\"blob-num js-line-number\" data-line-number=\"2491\"></td>\n        <td id=\"LC2491\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> data <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L2492\" class=\"blob-num js-line-number\" data-line-number=\"2492\"></td>\n        <td id=\"LC2492\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> r <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2493\" class=\"blob-num js-line-number\" data-line-number=\"2493\"></td>\n        <td id=\"LC2493\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> operation <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2494\" class=\"blob-num js-line-number\" data-line-number=\"2494\"></td>\n        <td id=\"LC2494\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> output <span class=\"pl-k\">=</span> <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">output</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2495\" class=\"blob-num js-line-number\" data-line-number=\"2495\"></td>\n        <td id=\"LC2495\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2496\" class=\"blob-num js-line-number\" data-line-number=\"2496\"></td>\n        <td id=\"LC2496\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> headers <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L2497\" class=\"blob-num js-line-number\" data-line-number=\"2497\"></td>\n        <td id=\"LC2497\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">headers</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">k</span>, <span class=\"pl-smi\">v</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2498\" class=\"blob-num js-line-number\" data-line-number=\"2498\"></td>\n        <td id=\"LC2498\" class=\"blob-code blob-code-inner js-file-line\">    headers[<span class=\"pl-smi\">k</span>.<span class=\"pl-c1\">toLowerCase</span>()] <span class=\"pl-k\">=</span> v;</td>\n      </tr>\n      <tr>\n        <td id=\"L2499\" class=\"blob-num js-line-number\" data-line-number=\"2499\"></td>\n        <td id=\"LC2499\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L2500\" class=\"blob-num js-line-number\" data-line-number=\"2500\"></td>\n        <td id=\"LC2500\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2501\" class=\"blob-num js-line-number\" data-line-number=\"2501\"></td>\n        <td id=\"LC2501\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-smi\">output</span>.<span class=\"pl-smi\">members</span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">member</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2502\" class=\"blob-num js-line-number\" data-line-number=\"2502\"></td>\n        <td id=\"LC2502\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> header <span class=\"pl-k\">=</span> (<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> name).<span class=\"pl-c1\">toLowerCase</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2503\" class=\"blob-num js-line-number\" data-line-number=\"2503\"></td>\n        <td id=\"LC2503\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>headers<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2504\" class=\"blob-num js-line-number\" data-line-number=\"2504\"></td>\n        <td id=\"LC2504\" class=\"blob-code blob-code-inner js-file-line\">      data[name] <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L2505\" class=\"blob-num js-line-number\" data-line-number=\"2505\"></td>\n        <td id=\"LC2505\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> location <span class=\"pl-k\">=</span> <span class=\"pl-smi\">member</span>.<span class=\"pl-smi\">isLocationName</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2506\" class=\"blob-num js-line-number\" data-line-number=\"2506\"></td>\n        <td id=\"LC2506\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> pattern <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">RegExp</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>^<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> location <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>(.+)<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>i<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2507\" class=\"blob-num js-line-number\" data-line-number=\"2507\"></td>\n        <td id=\"LC2507\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">headers</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">k</span>, <span class=\"pl-smi\">v</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2508\" class=\"blob-num js-line-number\" data-line-number=\"2508\"></td>\n        <td id=\"LC2508\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-smi\">k</span>.<span class=\"pl-c1\">match</span>(pattern);</td>\n      </tr>\n      <tr>\n        <td id=\"L2509\" class=\"blob-num js-line-number\" data-line-number=\"2509\"></td>\n        <td id=\"LC2509\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (result <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2510\" class=\"blob-num js-line-number\" data-line-number=\"2510\"></td>\n        <td id=\"LC2510\" class=\"blob-code blob-code-inner js-file-line\">          data[name][result[<span class=\"pl-c1\">1</span>]] <span class=\"pl-k\">=</span> v;</td>\n      </tr>\n      <tr>\n        <td id=\"L2511\" class=\"blob-num js-line-number\" data-line-number=\"2511\"></td>\n        <td id=\"LC2511\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L2512\" class=\"blob-num js-line-number\" data-line-number=\"2512\"></td>\n        <td id=\"LC2512\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L2513\" class=\"blob-num js-line-number\" data-line-number=\"2513\"></td>\n        <td id=\"LC2513\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>header<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2514\" class=\"blob-num js-line-number\" data-line-number=\"2514\"></td>\n        <td id=\"LC2514\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (headers[header] <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2515\" class=\"blob-num js-line-number\" data-line-number=\"2515\"></td>\n        <td id=\"LC2515\" class=\"blob-code blob-code-inner js-file-line\">        data[name] <span class=\"pl-k\">=</span> headers[header];</td>\n      </tr>\n      <tr>\n        <td id=\"L2516\" class=\"blob-num js-line-number\" data-line-number=\"2516\"></td>\n        <td id=\"LC2516\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2517\" class=\"blob-num js-line-number\" data-line-number=\"2517\"></td>\n        <td id=\"LC2517\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>statusCode<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2518\" class=\"blob-num js-line-number\" data-line-number=\"2518\"></td>\n        <td id=\"LC2518\" class=\"blob-code blob-code-inner js-file-line\">      data[name] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">parseInt</span>(<span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">statusCode</span>, <span class=\"pl-c1\">10</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2519\" class=\"blob-num js-line-number\" data-line-number=\"2519\"></td>\n        <td id=\"LC2519\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2520\" class=\"blob-num js-line-number\" data-line-number=\"2520\"></td>\n        <td id=\"LC2520\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L2521\" class=\"blob-num js-line-number\" data-line-number=\"2521\"></td>\n        <td id=\"LC2521\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2522\" class=\"blob-num js-line-number\" data-line-number=\"2522\"></td>\n        <td id=\"LC2522\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> data;</td>\n      </tr>\n      <tr>\n        <td id=\"L2523\" class=\"blob-num js-line-number\" data-line-number=\"2523\"></td>\n        <td id=\"LC2523\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2524\" class=\"blob-num js-line-number\" data-line-number=\"2524\"></td>\n        <td id=\"LC2524\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2525\" class=\"blob-num js-line-number\" data-line-number=\"2525\"></td>\n        <td id=\"LC2525\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2526\" class=\"blob-num js-line-number\" data-line-number=\"2526\"></td>\n        <td id=\"LC2526\" class=\"blob-code blob-code-inner js-file-line\">  buildRequest<span class=\"pl-k\">:</span> buildRequest,</td>\n      </tr>\n      <tr>\n        <td id=\"L2527\" class=\"blob-num js-line-number\" data-line-number=\"2527\"></td>\n        <td id=\"LC2527\" class=\"blob-code blob-code-inner js-file-line\">  extractError<span class=\"pl-k\">:</span> extractError,</td>\n      </tr>\n      <tr>\n        <td id=\"L2528\" class=\"blob-num js-line-number\" data-line-number=\"2528\"></td>\n        <td id=\"LC2528\" class=\"blob-code blob-code-inner js-file-line\">  extractData<span class=\"pl-k\">:</span> extractData</td>\n      </tr>\n      <tr>\n        <td id=\"L2529\" class=\"blob-num js-line-number\" data-line-number=\"2529\"></td>\n        <td id=\"LC2529\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L2530\" class=\"blob-num js-line-number\" data-line-number=\"2530\"></td>\n        <td id=\"LC2530\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2531\" class=\"blob-num js-line-number\" data-line-number=\"2531\"></td>\n        <td id=\"LC2531\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>}],<span class=\"pl-c1\">25</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L2532\" class=\"blob-num js-line-number\" data-line-number=\"2532\"></td>\n        <td id=\"LC2532\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2533\" class=\"blob-num js-line-number\" data-line-number=\"2533\"></td>\n        <td id=\"LC2533\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Rest <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./rest<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2534\" class=\"blob-num js-line-number\" data-line-number=\"2534\"></td>\n        <td id=\"LC2534\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Json <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./json<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2535\" class=\"blob-num js-line-number\" data-line-number=\"2535\"></td>\n        <td id=\"LC2535\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> JsonBuilder <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../json/builder<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2536\" class=\"blob-num js-line-number\" data-line-number=\"2536\"></td>\n        <td id=\"LC2536\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> JsonParser <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../json/parser<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2537\" class=\"blob-num js-line-number\" data-line-number=\"2537\"></td>\n        <td id=\"LC2537\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2538\" class=\"blob-num js-line-number\" data-line-number=\"2538\"></td>\n        <td id=\"LC2538\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">populateBody</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2539\" class=\"blob-num js-line-number\" data-line-number=\"2539\"></td>\n        <td id=\"LC2539\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> builder <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">JsonBuilder</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2540\" class=\"blob-num js-line-number\" data-line-number=\"2540\"></td>\n        <td id=\"LC2540\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> input <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>].<span class=\"pl-c1\">input</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2541\" class=\"blob-num js-line-number\" data-line-number=\"2541\"></td>\n        <td id=\"LC2541\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2542\" class=\"blob-num js-line-number\" data-line-number=\"2542\"></td>\n        <td id=\"LC2542\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">input</span>.<span class=\"pl-smi\">payload</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2543\" class=\"blob-num js-line-number\" data-line-number=\"2543\"></td>\n        <td id=\"LC2543\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> params <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L2544\" class=\"blob-num js-line-number\" data-line-number=\"2544\"></td>\n        <td id=\"LC2544\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> payloadShape <span class=\"pl-k\">=</span> <span class=\"pl-smi\">input</span>.<span class=\"pl-smi\">members</span>[<span class=\"pl-smi\">input</span>.<span class=\"pl-smi\">payload</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2545\" class=\"blob-num js-line-number\" data-line-number=\"2545\"></td>\n        <td id=\"LC2545\" class=\"blob-code blob-code-inner js-file-line\">    params <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">params</span>[<span class=\"pl-smi\">input</span>.<span class=\"pl-smi\">payload</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2546\" class=\"blob-num js-line-number\" data-line-number=\"2546\"></td>\n        <td id=\"LC2546\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (params <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2547\" class=\"blob-num js-line-number\" data-line-number=\"2547\"></td>\n        <td id=\"LC2547\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2548\" class=\"blob-num js-line-number\" data-line-number=\"2548\"></td>\n        <td id=\"LC2548\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">payloadShape</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2549\" class=\"blob-num js-line-number\" data-line-number=\"2549\"></td>\n        <td id=\"LC2549\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">builder</span>.<span class=\"pl-en\">build</span>(params, payloadShape);</td>\n      </tr>\n      <tr>\n        <td id=\"L2550\" class=\"blob-num js-line-number\" data-line-number=\"2550\"></td>\n        <td id=\"LC2550\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> { <span class=\"pl-c\">// non-JSON payload</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2551\" class=\"blob-num js-line-number\" data-line-number=\"2551\"></td>\n        <td id=\"LC2551\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> params;</td>\n      </tr>\n      <tr>\n        <td id=\"L2552\" class=\"blob-num js-line-number\" data-line-number=\"2552\"></td>\n        <td id=\"LC2552\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2553\" class=\"blob-num js-line-number\" data-line-number=\"2553\"></td>\n        <td id=\"LC2553\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2554\" class=\"blob-num js-line-number\" data-line-number=\"2554\"></td>\n        <td id=\"LC2554\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">builder</span>.<span class=\"pl-en\">build</span>(<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">params</span>, input);</td>\n      </tr>\n      <tr>\n        <td id=\"L2555\" class=\"blob-num js-line-number\" data-line-number=\"2555\"></td>\n        <td id=\"LC2555\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2556\" class=\"blob-num js-line-number\" data-line-number=\"2556\"></td>\n        <td id=\"LC2556\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2557\" class=\"blob-num js-line-number\" data-line-number=\"2557\"></td>\n        <td id=\"LC2557\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2558\" class=\"blob-num js-line-number\" data-line-number=\"2558\"></td>\n        <td id=\"LC2558\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">buildRequest</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2559\" class=\"blob-num js-line-number\" data-line-number=\"2559\"></td>\n        <td id=\"LC2559\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Rest</span>.<span class=\"pl-en\">buildRequest</span>(req);</td>\n      </tr>\n      <tr>\n        <td id=\"L2560\" class=\"blob-num js-line-number\" data-line-number=\"2560\"></td>\n        <td id=\"LC2560\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2561\" class=\"blob-num js-line-number\" data-line-number=\"2561\"></td>\n        <td id=\"LC2561\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> ([<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>GET<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>HEAD<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>DELETE<span class=\"pl-pds\">&#39;</span></span>].<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">method</span>) <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2562\" class=\"blob-num js-line-number\" data-line-number=\"2562\"></td>\n        <td id=\"LC2562\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">populateBody</span>(req);</td>\n      </tr>\n      <tr>\n        <td id=\"L2563\" class=\"blob-num js-line-number\" data-line-number=\"2563\"></td>\n        <td id=\"LC2563\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2564\" class=\"blob-num js-line-number\" data-line-number=\"2564\"></td>\n        <td id=\"LC2564\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2565\" class=\"blob-num js-line-number\" data-line-number=\"2565\"></td>\n        <td id=\"LC2565\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2566\" class=\"blob-num js-line-number\" data-line-number=\"2566\"></td>\n        <td id=\"LC2566\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">extractError</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2567\" class=\"blob-num js-line-number\" data-line-number=\"2567\"></td>\n        <td id=\"LC2567\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Json</span>.<span class=\"pl-en\">extractError</span>(resp);</td>\n      </tr>\n      <tr>\n        <td id=\"L2568\" class=\"blob-num js-line-number\" data-line-number=\"2568\"></td>\n        <td id=\"LC2568\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2569\" class=\"blob-num js-line-number\" data-line-number=\"2569\"></td>\n        <td id=\"LC2569\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2570\" class=\"blob-num js-line-number\" data-line-number=\"2570\"></td>\n        <td id=\"LC2570\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">extractData</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2571\" class=\"blob-num js-line-number\" data-line-number=\"2571\"></td>\n        <td id=\"LC2571\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Rest</span>.<span class=\"pl-en\">extractData</span>(resp);</td>\n      </tr>\n      <tr>\n        <td id=\"L2572\" class=\"blob-num js-line-number\" data-line-number=\"2572\"></td>\n        <td id=\"LC2572\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2573\" class=\"blob-num js-line-number\" data-line-number=\"2573\"></td>\n        <td id=\"LC2573\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> req <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2574\" class=\"blob-num js-line-number\" data-line-number=\"2574\"></td>\n        <td id=\"LC2574\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> rules <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>].<span class=\"pl-smi\">output</span> <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L2575\" class=\"blob-num js-line-number\" data-line-number=\"2575\"></td>\n        <td id=\"LC2575\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">payload</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2576\" class=\"blob-num js-line-number\" data-line-number=\"2576\"></td>\n        <td id=\"LC2576\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> payloadMember <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">members</span>[<span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">payload</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2577\" class=\"blob-num js-line-number\" data-line-number=\"2577\"></td>\n        <td id=\"LC2577\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> body <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">body</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2578\" class=\"blob-num js-line-number\" data-line-number=\"2578\"></td>\n        <td id=\"LC2578\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">payloadMember</span>.<span class=\"pl-smi\">isStreaming</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2579\" class=\"blob-num js-line-number\" data-line-number=\"2579\"></td>\n        <td id=\"LC2579\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>[<span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">payload</span>] <span class=\"pl-k\">=</span> body;</td>\n      </tr>\n      <tr>\n        <td id=\"L2580\" class=\"blob-num js-line-number\" data-line-number=\"2580\"></td>\n        <td id=\"LC2580\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">payloadMember</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">payloadMember</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2581\" class=\"blob-num js-line-number\" data-line-number=\"2581\"></td>\n        <td id=\"LC2581\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> parser <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">JsonParser</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2582\" class=\"blob-num js-line-number\" data-line-number=\"2582\"></td>\n        <td id=\"LC2582\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>[<span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">payload</span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parser</span>.<span class=\"pl-c1\">parse</span>(body, payloadMember);</td>\n      </tr>\n      <tr>\n        <td id=\"L2583\" class=\"blob-num js-line-number\" data-line-number=\"2583\"></td>\n        <td id=\"LC2583\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2584\" class=\"blob-num js-line-number\" data-line-number=\"2584\"></td>\n        <td id=\"LC2584\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>[<span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">payload</span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">body</span>.<span class=\"pl-c1\">toString</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2585\" class=\"blob-num js-line-number\" data-line-number=\"2585\"></td>\n        <td id=\"LC2585\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2586\" class=\"blob-num js-line-number\" data-line-number=\"2586\"></td>\n        <td id=\"LC2586\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2587\" class=\"blob-num js-line-number\" data-line-number=\"2587\"></td>\n        <td id=\"LC2587\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> data <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2588\" class=\"blob-num js-line-number\" data-line-number=\"2588\"></td>\n        <td id=\"LC2588\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">Json</span>.<span class=\"pl-en\">extractData</span>(resp);</td>\n      </tr>\n      <tr>\n        <td id=\"L2589\" class=\"blob-num js-line-number\" data-line-number=\"2589\"></td>\n        <td id=\"LC2589\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">merge</span>(data, <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2590\" class=\"blob-num js-line-number\" data-line-number=\"2590\"></td>\n        <td id=\"LC2590\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2591\" class=\"blob-num js-line-number\" data-line-number=\"2591\"></td>\n        <td id=\"LC2591\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2592\" class=\"blob-num js-line-number\" data-line-number=\"2592\"></td>\n        <td id=\"LC2592\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2593\" class=\"blob-num js-line-number\" data-line-number=\"2593\"></td>\n        <td id=\"LC2593\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2594\" class=\"blob-num js-line-number\" data-line-number=\"2594\"></td>\n        <td id=\"LC2594\" class=\"blob-code blob-code-inner js-file-line\">  buildRequest<span class=\"pl-k\">:</span> buildRequest,</td>\n      </tr>\n      <tr>\n        <td id=\"L2595\" class=\"blob-num js-line-number\" data-line-number=\"2595\"></td>\n        <td id=\"LC2595\" class=\"blob-code blob-code-inner js-file-line\">  extractError<span class=\"pl-k\">:</span> extractError,</td>\n      </tr>\n      <tr>\n        <td id=\"L2596\" class=\"blob-num js-line-number\" data-line-number=\"2596\"></td>\n        <td id=\"LC2596\" class=\"blob-code blob-code-inner js-file-line\">  extractData<span class=\"pl-k\">:</span> extractData</td>\n      </tr>\n      <tr>\n        <td id=\"L2597\" class=\"blob-num js-line-number\" data-line-number=\"2597\"></td>\n        <td id=\"LC2597\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L2598\" class=\"blob-num js-line-number\" data-line-number=\"2598\"></td>\n        <td id=\"LC2598\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2599\" class=\"blob-num js-line-number\" data-line-number=\"2599\"></td>\n        <td id=\"LC2599\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../json/builder<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">13</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../json/parser<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">14</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./json<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">22</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./rest<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">24</span>}],<span class=\"pl-c1\">26</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L2600\" class=\"blob-num js-line-number\" data-line-number=\"2600\"></td>\n        <td id=\"LC2600\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2601\" class=\"blob-num js-line-number\" data-line-number=\"2601\"></td>\n        <td id=\"LC2601\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2602\" class=\"blob-num js-line-number\" data-line-number=\"2602\"></td>\n        <td id=\"LC2602\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Rest <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./rest<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2603\" class=\"blob-num js-line-number\" data-line-number=\"2603\"></td>\n        <td id=\"LC2603\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2604\" class=\"blob-num js-line-number\" data-line-number=\"2604\"></td>\n        <td id=\"LC2604\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">populateBody</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2605\" class=\"blob-num js-line-number\" data-line-number=\"2605\"></td>\n        <td id=\"LC2605\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> input <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>].<span class=\"pl-c1\">input</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2606\" class=\"blob-num js-line-number\" data-line-number=\"2606\"></td>\n        <td id=\"LC2606\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> builder <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.XML</span>.<span class=\"pl-en\">Builder</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2607\" class=\"blob-num js-line-number\" data-line-number=\"2607\"></td>\n        <td id=\"LC2607\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> params <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">params</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2608\" class=\"blob-num js-line-number\" data-line-number=\"2608\"></td>\n        <td id=\"LC2608\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2609\" class=\"blob-num js-line-number\" data-line-number=\"2609\"></td>\n        <td id=\"LC2609\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> payload <span class=\"pl-k\">=</span> <span class=\"pl-smi\">input</span>.<span class=\"pl-smi\">payload</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2610\" class=\"blob-num js-line-number\" data-line-number=\"2610\"></td>\n        <td id=\"LC2610\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (payload) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2611\" class=\"blob-num js-line-number\" data-line-number=\"2611\"></td>\n        <td id=\"LC2611\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> payloadMember <span class=\"pl-k\">=</span> <span class=\"pl-smi\">input</span>.<span class=\"pl-smi\">members</span>[payload];</td>\n      </tr>\n      <tr>\n        <td id=\"L2612\" class=\"blob-num js-line-number\" data-line-number=\"2612\"></td>\n        <td id=\"LC2612\" class=\"blob-code blob-code-inner js-file-line\">    params <span class=\"pl-k\">=</span> params[payload];</td>\n      </tr>\n      <tr>\n        <td id=\"L2613\" class=\"blob-num js-line-number\" data-line-number=\"2613\"></td>\n        <td id=\"LC2613\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (params <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2614\" class=\"blob-num js-line-number\" data-line-number=\"2614\"></td>\n        <td id=\"LC2614\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2615\" class=\"blob-num js-line-number\" data-line-number=\"2615\"></td>\n        <td id=\"LC2615\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">payloadMember</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2616\" class=\"blob-num js-line-number\" data-line-number=\"2616\"></td>\n        <td id=\"LC2616\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> rootElement <span class=\"pl-k\">=</span> <span class=\"pl-smi\">payloadMember</span>.<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2617\" class=\"blob-num js-line-number\" data-line-number=\"2617\"></td>\n        <td id=\"LC2617\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">builder</span>.<span class=\"pl-en\">toXML</span>(params, payloadMember, rootElement, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2618\" class=\"blob-num js-line-number\" data-line-number=\"2618\"></td>\n        <td id=\"LC2618\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> { <span class=\"pl-c\">// non-xml payload</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2619\" class=\"blob-num js-line-number\" data-line-number=\"2619\"></td>\n        <td id=\"LC2619\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> params;</td>\n      </tr>\n      <tr>\n        <td id=\"L2620\" class=\"blob-num js-line-number\" data-line-number=\"2620\"></td>\n        <td id=\"LC2620\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2621\" class=\"blob-num js-line-number\" data-line-number=\"2621\"></td>\n        <td id=\"LC2621\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2622\" class=\"blob-num js-line-number\" data-line-number=\"2622\"></td>\n        <td id=\"LC2622\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">builder</span>.<span class=\"pl-en\">toXML</span>(params, input, <span class=\"pl-smi\">input</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2623\" class=\"blob-num js-line-number\" data-line-number=\"2623\"></td>\n        <td id=\"LC2623\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">input</span>.<span class=\"pl-c1\">shape</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">string</span>.<span class=\"pl-en\">upperFirst</span>(<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Request<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2624\" class=\"blob-num js-line-number\" data-line-number=\"2624\"></td>\n        <td id=\"LC2624\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2625\" class=\"blob-num js-line-number\" data-line-number=\"2625\"></td>\n        <td id=\"LC2625\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2626\" class=\"blob-num js-line-number\" data-line-number=\"2626\"></td>\n        <td id=\"LC2626\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2627\" class=\"blob-num js-line-number\" data-line-number=\"2627\"></td>\n        <td id=\"LC2627\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">buildRequest</span>(<span class=\"pl-smi\">req</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2628\" class=\"blob-num js-line-number\" data-line-number=\"2628\"></td>\n        <td id=\"LC2628\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Rest</span>.<span class=\"pl-en\">buildRequest</span>(req);</td>\n      </tr>\n      <tr>\n        <td id=\"L2629\" class=\"blob-num js-line-number\" data-line-number=\"2629\"></td>\n        <td id=\"LC2629\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2630\" class=\"blob-num js-line-number\" data-line-number=\"2630\"></td>\n        <td id=\"LC2630\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> ([<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>GET<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>HEAD<span class=\"pl-pds\">&#39;</span></span>].<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">method</span>) <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2631\" class=\"blob-num js-line-number\" data-line-number=\"2631\"></td>\n        <td id=\"LC2631\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">populateBody</span>(req);</td>\n      </tr>\n      <tr>\n        <td id=\"L2632\" class=\"blob-num js-line-number\" data-line-number=\"2632\"></td>\n        <td id=\"LC2632\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2633\" class=\"blob-num js-line-number\" data-line-number=\"2633\"></td>\n        <td id=\"LC2633\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2634\" class=\"blob-num js-line-number\" data-line-number=\"2634\"></td>\n        <td id=\"LC2634\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2635\" class=\"blob-num js-line-number\" data-line-number=\"2635\"></td>\n        <td id=\"LC2635\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">extractError</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2636\" class=\"blob-num js-line-number\" data-line-number=\"2636\"></td>\n        <td id=\"LC2636\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Rest</span>.<span class=\"pl-en\">extractError</span>(resp);</td>\n      </tr>\n      <tr>\n        <td id=\"L2637\" class=\"blob-num js-line-number\" data-line-number=\"2637\"></td>\n        <td id=\"LC2637\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2638\" class=\"blob-num js-line-number\" data-line-number=\"2638\"></td>\n        <td id=\"LC2638\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> data <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.XML</span>.<span class=\"pl-en\">Parser</span>().<span class=\"pl-c1\">parse</span>(<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">body</span>.<span class=\"pl-c1\">toString</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L2639\" class=\"blob-num js-line-number\" data-line-number=\"2639\"></td>\n        <td id=\"LC2639\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Errors</span>) data <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Errors</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2640\" class=\"blob-num js-line-number\" data-line-number=\"2640\"></td>\n        <td id=\"LC2640\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Error</span>) data <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Error</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2641\" class=\"blob-num js-line-number\" data-line-number=\"2641\"></td>\n        <td id=\"LC2641\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Code</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2642\" class=\"blob-num js-line-number\" data-line-number=\"2642\"></td>\n        <td id=\"LC2642\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), {</td>\n      </tr>\n      <tr>\n        <td id=\"L2643\" class=\"blob-num js-line-number\" data-line-number=\"2643\"></td>\n        <td id=\"LC2643\" class=\"blob-code blob-code-inner js-file-line\">      code<span class=\"pl-k\">:</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Code</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2644\" class=\"blob-num js-line-number\" data-line-number=\"2644\"></td>\n        <td id=\"LC2644\" class=\"blob-code blob-code-inner js-file-line\">      message<span class=\"pl-k\">:</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Message</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2645\" class=\"blob-num js-line-number\" data-line-number=\"2645\"></td>\n        <td id=\"LC2645\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L2646\" class=\"blob-num js-line-number\" data-line-number=\"2646\"></td>\n        <td id=\"LC2646\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2647\" class=\"blob-num js-line-number\" data-line-number=\"2647\"></td>\n        <td id=\"LC2647\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), {</td>\n      </tr>\n      <tr>\n        <td id=\"L2648\" class=\"blob-num js-line-number\" data-line-number=\"2648\"></td>\n        <td id=\"LC2648\" class=\"blob-code blob-code-inner js-file-line\">      code<span class=\"pl-k\">:</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">statusCode</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2649\" class=\"blob-num js-line-number\" data-line-number=\"2649\"></td>\n        <td id=\"LC2649\" class=\"blob-code blob-code-inner js-file-line\">      message<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2650\" class=\"blob-num js-line-number\" data-line-number=\"2650\"></td>\n        <td id=\"LC2650\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L2651\" class=\"blob-num js-line-number\" data-line-number=\"2651\"></td>\n        <td id=\"LC2651\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2652\" class=\"blob-num js-line-number\" data-line-number=\"2652\"></td>\n        <td id=\"LC2652\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2653\" class=\"blob-num js-line-number\" data-line-number=\"2653\"></td>\n        <td id=\"LC2653\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2654\" class=\"blob-num js-line-number\" data-line-number=\"2654\"></td>\n        <td id=\"LC2654\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">extractData</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2655\" class=\"blob-num js-line-number\" data-line-number=\"2655\"></td>\n        <td id=\"LC2655\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Rest</span>.<span class=\"pl-en\">extractData</span>(resp);</td>\n      </tr>\n      <tr>\n        <td id=\"L2656\" class=\"blob-num js-line-number\" data-line-number=\"2656\"></td>\n        <td id=\"LC2656\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2657\" class=\"blob-num js-line-number\" data-line-number=\"2657\"></td>\n        <td id=\"LC2657\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> parser;</td>\n      </tr>\n      <tr>\n        <td id=\"L2658\" class=\"blob-num js-line-number\" data-line-number=\"2658\"></td>\n        <td id=\"LC2658\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> req <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2659\" class=\"blob-num js-line-number\" data-line-number=\"2659\"></td>\n        <td id=\"LC2659\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> body <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">body</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2660\" class=\"blob-num js-line-number\" data-line-number=\"2660\"></td>\n        <td id=\"LC2660\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> operation <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[<span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L2661\" class=\"blob-num js-line-number\" data-line-number=\"2661\"></td>\n        <td id=\"LC2661\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> output <span class=\"pl-k\">=</span> <span class=\"pl-smi\">operation</span>.<span class=\"pl-smi\">output</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2662\" class=\"blob-num js-line-number\" data-line-number=\"2662\"></td>\n        <td id=\"LC2662\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2663\" class=\"blob-num js-line-number\" data-line-number=\"2663\"></td>\n        <td id=\"LC2663\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> payload <span class=\"pl-k\">=</span> <span class=\"pl-smi\">output</span>.<span class=\"pl-smi\">payload</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2664\" class=\"blob-num js-line-number\" data-line-number=\"2664\"></td>\n        <td id=\"LC2664\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (payload) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2665\" class=\"blob-num js-line-number\" data-line-number=\"2665\"></td>\n        <td id=\"LC2665\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> payloadMember <span class=\"pl-k\">=</span> <span class=\"pl-smi\">output</span>.<span class=\"pl-smi\">members</span>[payload];</td>\n      </tr>\n      <tr>\n        <td id=\"L2666\" class=\"blob-num js-line-number\" data-line-number=\"2666\"></td>\n        <td id=\"LC2666\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">payloadMember</span>.<span class=\"pl-smi\">isStreaming</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2667\" class=\"blob-num js-line-number\" data-line-number=\"2667\"></td>\n        <td id=\"LC2667\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>[payload] <span class=\"pl-k\">=</span> body;</td>\n      </tr>\n      <tr>\n        <td id=\"L2668\" class=\"blob-num js-line-number\" data-line-number=\"2668\"></td>\n        <td id=\"LC2668\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">payloadMember</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2669\" class=\"blob-num js-line-number\" data-line-number=\"2669\"></td>\n        <td id=\"LC2669\" class=\"blob-code blob-code-inner js-file-line\">      parser <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.XML</span>.<span class=\"pl-en\">Parser</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2670\" class=\"blob-num js-line-number\" data-line-number=\"2670\"></td>\n        <td id=\"LC2670\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>[payload] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parser</span>.<span class=\"pl-c1\">parse</span>(<span class=\"pl-smi\">body</span>.<span class=\"pl-c1\">toString</span>(), payloadMember);</td>\n      </tr>\n      <tr>\n        <td id=\"L2671\" class=\"blob-num js-line-number\" data-line-number=\"2671\"></td>\n        <td id=\"LC2671\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2672\" class=\"blob-num js-line-number\" data-line-number=\"2672\"></td>\n        <td id=\"LC2672\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>[payload] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">body</span>.<span class=\"pl-c1\">toString</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2673\" class=\"blob-num js-line-number\" data-line-number=\"2673\"></td>\n        <td id=\"LC2673\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2674\" class=\"blob-num js-line-number\" data-line-number=\"2674\"></td>\n        <td id=\"LC2674\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">body</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2675\" class=\"blob-num js-line-number\" data-line-number=\"2675\"></td>\n        <td id=\"LC2675\" class=\"blob-code blob-code-inner js-file-line\">    parser <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.XML</span>.<span class=\"pl-en\">Parser</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2676\" class=\"blob-num js-line-number\" data-line-number=\"2676\"></td>\n        <td id=\"LC2676\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> data <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parser</span>.<span class=\"pl-c1\">parse</span>(<span class=\"pl-smi\">body</span>.<span class=\"pl-c1\">toString</span>(), output);</td>\n      </tr>\n      <tr>\n        <td id=\"L2677\" class=\"blob-num js-line-number\" data-line-number=\"2677\"></td>\n        <td id=\"LC2677\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">update</span>(<span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>, data);</td>\n      </tr>\n      <tr>\n        <td id=\"L2678\" class=\"blob-num js-line-number\" data-line-number=\"2678\"></td>\n        <td id=\"LC2678\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2679\" class=\"blob-num js-line-number\" data-line-number=\"2679\"></td>\n        <td id=\"LC2679\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2680\" class=\"blob-num js-line-number\" data-line-number=\"2680\"></td>\n        <td id=\"LC2680\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2681\" class=\"blob-num js-line-number\" data-line-number=\"2681\"></td>\n        <td id=\"LC2681\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2682\" class=\"blob-num js-line-number\" data-line-number=\"2682\"></td>\n        <td id=\"LC2682\" class=\"blob-code blob-code-inner js-file-line\">  buildRequest<span class=\"pl-k\">:</span> buildRequest,</td>\n      </tr>\n      <tr>\n        <td id=\"L2683\" class=\"blob-num js-line-number\" data-line-number=\"2683\"></td>\n        <td id=\"LC2683\" class=\"blob-code blob-code-inner js-file-line\">  extractError<span class=\"pl-k\">:</span> extractError,</td>\n      </tr>\n      <tr>\n        <td id=\"L2684\" class=\"blob-num js-line-number\" data-line-number=\"2684\"></td>\n        <td id=\"LC2684\" class=\"blob-code blob-code-inner js-file-line\">  extractData<span class=\"pl-k\">:</span> extractData</td>\n      </tr>\n      <tr>\n        <td id=\"L2685\" class=\"blob-num js-line-number\" data-line-number=\"2685\"></td>\n        <td id=\"LC2685\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L2686\" class=\"blob-num js-line-number\" data-line-number=\"2686\"></td>\n        <td id=\"LC2686\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2687\" class=\"blob-num js-line-number\" data-line-number=\"2687\"></td>\n        <td id=\"LC2687\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./rest<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">24</span>}],<span class=\"pl-c1\">27</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L2688\" class=\"blob-num js-line-number\" data-line-number=\"2688\"></td>\n        <td id=\"LC2688\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2689\" class=\"blob-num js-line-number\" data-line-number=\"2689\"></td>\n        <td id=\"LC2689\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2690\" class=\"blob-num js-line-number\" data-line-number=\"2690\"></td>\n        <td id=\"LC2690\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">QueryParamSerializer</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L2691\" class=\"blob-num js-line-number\" data-line-number=\"2691\"></td>\n        <td id=\"LC2691\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2692\" class=\"blob-num js-line-number\" data-line-number=\"2692\"></td>\n        <td id=\"LC2692\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2693\" class=\"blob-num js-line-number\" data-line-number=\"2693\"></td>\n        <td id=\"LC2693\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">QueryParamSerializer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">serialize</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">fn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2694\" class=\"blob-num js-line-number\" data-line-number=\"2694\"></td>\n        <td id=\"LC2694\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">serializeStructure</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>, params, shape, fn);</td>\n      </tr>\n      <tr>\n        <td id=\"L2695\" class=\"blob-num js-line-number\" data-line-number=\"2695\"></td>\n        <td id=\"LC2695\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L2696\" class=\"blob-num js-line-number\" data-line-number=\"2696\"></td>\n        <td id=\"LC2696\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2697\" class=\"blob-num js-line-number\" data-line-number=\"2697\"></td>\n        <td id=\"LC2697\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">ucfirst</span>(<span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2698\" class=\"blob-num js-line-number\" data-line-number=\"2698\"></td>\n        <td id=\"LC2698\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">isQueryName</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ec2<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2699\" class=\"blob-num js-line-number\" data-line-number=\"2699\"></td>\n        <td id=\"LC2699\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2700\" class=\"blob-num js-line-number\" data-line-number=\"2700\"></td>\n        <td id=\"LC2700\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2701\" class=\"blob-num js-line-number\" data-line-number=\"2701\"></td>\n        <td id=\"LC2701\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">name</span>[<span class=\"pl-c1\">0</span>].<span class=\"pl-c1\">toUpperCase</span>() <span class=\"pl-k\">+</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">name</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2702\" class=\"blob-num js-line-number\" data-line-number=\"2702\"></td>\n        <td id=\"LC2702\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2703\" class=\"blob-num js-line-number\" data-line-number=\"2703\"></td>\n        <td id=\"LC2703\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2704\" class=\"blob-num js-line-number\" data-line-number=\"2704\"></td>\n        <td id=\"LC2704\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2705\" class=\"blob-num js-line-number\" data-line-number=\"2705\"></td>\n        <td id=\"LC2705\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">serializeStructure</span>(<span class=\"pl-smi\">prefix</span>, <span class=\"pl-smi\">struct</span>, <span class=\"pl-smi\">rules</span>, <span class=\"pl-smi\">fn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2706\" class=\"blob-num js-line-number\" data-line-number=\"2706\"></td>\n        <td id=\"LC2706\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">members</span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">member</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2707\" class=\"blob-num js-line-number\" data-line-number=\"2707\"></td>\n        <td id=\"LC2707\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> struct[name];</td>\n      </tr>\n      <tr>\n        <td id=\"L2708\" class=\"blob-num js-line-number\" data-line-number=\"2708\"></td>\n        <td id=\"LC2708\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2709\" class=\"blob-num js-line-number\" data-line-number=\"2709\"></td>\n        <td id=\"LC2709\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2710\" class=\"blob-num js-line-number\" data-line-number=\"2710\"></td>\n        <td id=\"LC2710\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> memberName <span class=\"pl-k\">=</span> <span class=\"pl-en\">ucfirst</span>(member);</td>\n      </tr>\n      <tr>\n        <td id=\"L2711\" class=\"blob-num js-line-number\" data-line-number=\"2711\"></td>\n        <td id=\"LC2711\" class=\"blob-code blob-code-inner js-file-line\">    memberName <span class=\"pl-k\">=</span> prefix <span class=\"pl-k\">?</span> prefix <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> memberName <span class=\"pl-k\">:</span> memberName;</td>\n      </tr>\n      <tr>\n        <td id=\"L2712\" class=\"blob-num js-line-number\" data-line-number=\"2712\"></td>\n        <td id=\"LC2712\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">serializeMember</span>(memberName, value, member, fn);</td>\n      </tr>\n      <tr>\n        <td id=\"L2713\" class=\"blob-num js-line-number\" data-line-number=\"2713\"></td>\n        <td id=\"LC2713\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L2714\" class=\"blob-num js-line-number\" data-line-number=\"2714\"></td>\n        <td id=\"LC2714\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2715\" class=\"blob-num js-line-number\" data-line-number=\"2715\"></td>\n        <td id=\"LC2715\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2716\" class=\"blob-num js-line-number\" data-line-number=\"2716\"></td>\n        <td id=\"LC2716\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">serializeMap</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">map</span>, <span class=\"pl-smi\">rules</span>, <span class=\"pl-smi\">fn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2717\" class=\"blob-num js-line-number\" data-line-number=\"2717\"></td>\n        <td id=\"LC2717\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2718\" class=\"blob-num js-line-number\" data-line-number=\"2718\"></td>\n        <td id=\"LC2718\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(map, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2719\" class=\"blob-num js-line-number\" data-line-number=\"2719\"></td>\n        <td id=\"LC2719\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> prefix <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">flattened</span> <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.entry.<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2720\" class=\"blob-num js-line-number\" data-line-number=\"2720\"></td>\n        <td id=\"LC2720\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> position <span class=\"pl-k\">=</span> prefix <span class=\"pl-k\">+</span> (i<span class=\"pl-k\">++</span>) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2721\" class=\"blob-num js-line-number\" data-line-number=\"2721\"></td>\n        <td id=\"LC2721\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> keyName <span class=\"pl-k\">=</span> position <span class=\"pl-k\">+</span> (<span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>key<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2722\" class=\"blob-num js-line-number\" data-line-number=\"2722\"></td>\n        <td id=\"LC2722\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> valueName <span class=\"pl-k\">=</span> position <span class=\"pl-k\">+</span> (<span class=\"pl-smi\">rules</span>.<span class=\"pl-c1\">value</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2723\" class=\"blob-num js-line-number\" data-line-number=\"2723\"></td>\n        <td id=\"LC2723\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">serializeMember</span>(name <span class=\"pl-k\">+</span> keyName, key, <span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">key</span>, fn);</td>\n      </tr>\n      <tr>\n        <td id=\"L2724\" class=\"blob-num js-line-number\" data-line-number=\"2724\"></td>\n        <td id=\"LC2724\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">serializeMember</span>(name <span class=\"pl-k\">+</span> valueName, value, <span class=\"pl-smi\">rules</span>.<span class=\"pl-c1\">value</span>, fn);</td>\n      </tr>\n      <tr>\n        <td id=\"L2725\" class=\"blob-num js-line-number\" data-line-number=\"2725\"></td>\n        <td id=\"LC2725\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L2726\" class=\"blob-num js-line-number\" data-line-number=\"2726\"></td>\n        <td id=\"LC2726\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2727\" class=\"blob-num js-line-number\" data-line-number=\"2727\"></td>\n        <td id=\"LC2727\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2728\" class=\"blob-num js-line-number\" data-line-number=\"2728\"></td>\n        <td id=\"LC2728\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">serializeList</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">list</span>, <span class=\"pl-smi\">rules</span>, <span class=\"pl-smi\">fn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2729\" class=\"blob-num js-line-number\" data-line-number=\"2729\"></td>\n        <td id=\"LC2729\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> memberRules <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">member</span> <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L2730\" class=\"blob-num js-line-number\" data-line-number=\"2730\"></td>\n        <td id=\"LC2730\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2731\" class=\"blob-num js-line-number\" data-line-number=\"2731\"></td>\n        <td id=\"LC2731\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">list</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2732\" class=\"blob-num js-line-number\" data-line-number=\"2732\"></td>\n        <td id=\"LC2732\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">fn</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, name, <span class=\"pl-c1\">null</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2733\" class=\"blob-num js-line-number\" data-line-number=\"2733\"></td>\n        <td id=\"LC2733\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2734\" class=\"blob-num js-line-number\" data-line-number=\"2734\"></td>\n        <td id=\"LC2734\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2735\" class=\"blob-num js-line-number\" data-line-number=\"2735\"></td>\n        <td id=\"LC2735\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2736\" class=\"blob-num js-line-number\" data-line-number=\"2736\"></td>\n        <td id=\"LC2736\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(list, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">v</span>, <span class=\"pl-smi\">n</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2737\" class=\"blob-num js-line-number\" data-line-number=\"2737\"></td>\n        <td id=\"LC2737\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> suffix <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> (n <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2738\" class=\"blob-num js-line-number\" data-line-number=\"2738\"></td>\n        <td id=\"LC2738\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ec2<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2739\" class=\"blob-num js-line-number\" data-line-number=\"2739\"></td>\n        <td id=\"LC2739\" class=\"blob-code blob-code-inner js-file-line\">      suffix <span class=\"pl-k\">=</span> suffix <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>; <span class=\"pl-c\">// make linter happy</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2740\" class=\"blob-num js-line-number\" data-line-number=\"2740\"></td>\n        <td id=\"LC2740\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">rules</span>.<span class=\"pl-smi\">flattened</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2741\" class=\"blob-num js-line-number\" data-line-number=\"2741\"></td>\n        <td id=\"LC2741\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">memberRules</span>.<span class=\"pl-c1\">name</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2742\" class=\"blob-num js-line-number\" data-line-number=\"2742\"></td>\n        <td id=\"LC2742\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2743\" class=\"blob-num js-line-number\" data-line-number=\"2743\"></td>\n        <td id=\"LC2743\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">pop</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2744\" class=\"blob-num js-line-number\" data-line-number=\"2744\"></td>\n        <td id=\"LC2744\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-en\">ucfirst</span>(memberRules));</td>\n      </tr>\n      <tr>\n        <td id=\"L2745\" class=\"blob-num js-line-number\" data-line-number=\"2745\"></td>\n        <td id=\"LC2745\" class=\"blob-code blob-code-inner js-file-line\">        name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2746\" class=\"blob-num js-line-number\" data-line-number=\"2746\"></td>\n        <td id=\"LC2746\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2747\" class=\"blob-num js-line-number\" data-line-number=\"2747\"></td>\n        <td id=\"LC2747\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2748\" class=\"blob-num js-line-number\" data-line-number=\"2748\"></td>\n        <td id=\"LC2748\" class=\"blob-code blob-code-inner js-file-line\">      suffix <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.member<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> suffix;</td>\n      </tr>\n      <tr>\n        <td id=\"L2749\" class=\"blob-num js-line-number\" data-line-number=\"2749\"></td>\n        <td id=\"LC2749\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2750\" class=\"blob-num js-line-number\" data-line-number=\"2750\"></td>\n        <td id=\"LC2750\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">serializeMember</span>(name <span class=\"pl-k\">+</span> suffix, v, memberRules, fn);</td>\n      </tr>\n      <tr>\n        <td id=\"L2751\" class=\"blob-num js-line-number\" data-line-number=\"2751\"></td>\n        <td id=\"LC2751\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L2752\" class=\"blob-num js-line-number\" data-line-number=\"2752\"></td>\n        <td id=\"LC2752\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2753\" class=\"blob-num js-line-number\" data-line-number=\"2753\"></td>\n        <td id=\"LC2753\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2754\" class=\"blob-num js-line-number\" data-line-number=\"2754\"></td>\n        <td id=\"LC2754\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">serializeMember</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">rules</span>, <span class=\"pl-smi\">fn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2755\" class=\"blob-num js-line-number\" data-line-number=\"2755\"></td>\n        <td id=\"LC2755\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2756\" class=\"blob-num js-line-number\" data-line-number=\"2756\"></td>\n        <td id=\"LC2756\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">rules</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2757\" class=\"blob-num js-line-number\" data-line-number=\"2757\"></td>\n        <td id=\"LC2757\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">serializeStructure</span>(name, value, rules, fn);</td>\n      </tr>\n      <tr>\n        <td id=\"L2758\" class=\"blob-num js-line-number\" data-line-number=\"2758\"></td>\n        <td id=\"LC2758\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">rules</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2759\" class=\"blob-num js-line-number\" data-line-number=\"2759\"></td>\n        <td id=\"LC2759\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">serializeList</span>(name, value, rules, fn);</td>\n      </tr>\n      <tr>\n        <td id=\"L2760\" class=\"blob-num js-line-number\" data-line-number=\"2760\"></td>\n        <td id=\"LC2760\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">rules</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2761\" class=\"blob-num js-line-number\" data-line-number=\"2761\"></td>\n        <td id=\"LC2761\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">serializeMap</span>(name, value, rules, fn);</td>\n      </tr>\n      <tr>\n        <td id=\"L2762\" class=\"blob-num js-line-number\" data-line-number=\"2762\"></td>\n        <td id=\"LC2762\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2763\" class=\"blob-num js-line-number\" data-line-number=\"2763\"></td>\n        <td id=\"LC2763\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">fn</span>(name, <span class=\"pl-smi\">rules</span>.<span class=\"pl-en\">toWireFormat</span>(value).<span class=\"pl-c1\">toString</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L2764\" class=\"blob-num js-line-number\" data-line-number=\"2764\"></td>\n        <td id=\"LC2764\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2765\" class=\"blob-num js-line-number\" data-line-number=\"2765\"></td>\n        <td id=\"LC2765\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2766\" class=\"blob-num js-line-number\" data-line-number=\"2766\"></td>\n        <td id=\"LC2766\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2767\" class=\"blob-num js-line-number\" data-line-number=\"2767\"></td>\n        <td id=\"LC2767\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> QueryParamSerializer;</td>\n      </tr>\n      <tr>\n        <td id=\"L2768\" class=\"blob-num js-line-number\" data-line-number=\"2768\"></td>\n        <td id=\"LC2768\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2769\" class=\"blob-num js-line-number\" data-line-number=\"2769\"></td>\n        <td id=\"LC2769\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>}],<span class=\"pl-c1\">28</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L2770\" class=\"blob-num js-line-number\" data-line-number=\"2770\"></td>\n        <td id=\"LC2770\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2771\" class=\"blob-num js-line-number\" data-line-number=\"2771\"></td>\n        <td id=\"LC2771\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> regionConfig <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./region_config.json<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2772\" class=\"blob-num js-line-number\" data-line-number=\"2772\"></td>\n        <td id=\"LC2772\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2773\" class=\"blob-num js-line-number\" data-line-number=\"2773\"></td>\n        <td id=\"LC2773\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">generateRegionPrefix</span>(<span class=\"pl-smi\">region</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2774\" class=\"blob-num js-line-number\" data-line-number=\"2774\"></td>\n        <td id=\"LC2774\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>region) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2775\" class=\"blob-num js-line-number\" data-line-number=\"2775\"></td>\n        <td id=\"LC2775\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2776\" class=\"blob-num js-line-number\" data-line-number=\"2776\"></td>\n        <td id=\"LC2776\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> <span class=\"pl-smi\">region</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>-<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2777\" class=\"blob-num js-line-number\" data-line-number=\"2777\"></td>\n        <td id=\"LC2777\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">3</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2778\" class=\"blob-num js-line-number\" data-line-number=\"2778\"></td>\n        <td id=\"LC2778\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-c1\">0</span>, <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">2</span>).<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>-<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>-*<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2779\" class=\"blob-num js-line-number\" data-line-number=\"2779\"></td>\n        <td id=\"LC2779\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2780\" class=\"blob-num js-line-number\" data-line-number=\"2780\"></td>\n        <td id=\"LC2780\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2781\" class=\"blob-num js-line-number\" data-line-number=\"2781\"></td>\n        <td id=\"LC2781\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">derivedKeys</span>(<span class=\"pl-smi\">service</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2782\" class=\"blob-num js-line-number\" data-line-number=\"2782\"></td>\n        <td id=\"LC2782\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> region <span class=\"pl-k\">=</span> <span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">region</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2783\" class=\"blob-num js-line-number\" data-line-number=\"2783\"></td>\n        <td id=\"LC2783\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> regionPrefix <span class=\"pl-k\">=</span> <span class=\"pl-en\">generateRegionPrefix</span>(region);</td>\n      </tr>\n      <tr>\n        <td id=\"L2784\" class=\"blob-num js-line-number\" data-line-number=\"2784\"></td>\n        <td id=\"LC2784\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> endpointPrefix <span class=\"pl-k\">=</span> <span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">endpointPrefix</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2785\" class=\"blob-num js-line-number\" data-line-number=\"2785\"></td>\n        <td id=\"LC2785\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2786\" class=\"blob-num js-line-number\" data-line-number=\"2786\"></td>\n        <td id=\"LC2786\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> [</td>\n      </tr>\n      <tr>\n        <td id=\"L2787\" class=\"blob-num js-line-number\" data-line-number=\"2787\"></td>\n        <td id=\"LC2787\" class=\"blob-code blob-code-inner js-file-line\">    [region, endpointPrefix],</td>\n      </tr>\n      <tr>\n        <td id=\"L2788\" class=\"blob-num js-line-number\" data-line-number=\"2788\"></td>\n        <td id=\"LC2788\" class=\"blob-code blob-code-inner js-file-line\">    [regionPrefix, endpointPrefix],</td>\n      </tr>\n      <tr>\n        <td id=\"L2789\" class=\"blob-num js-line-number\" data-line-number=\"2789\"></td>\n        <td id=\"LC2789\" class=\"blob-code blob-code-inner js-file-line\">    [region, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>*<span class=\"pl-pds\">&#39;</span></span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L2790\" class=\"blob-num js-line-number\" data-line-number=\"2790\"></td>\n        <td id=\"LC2790\" class=\"blob-code blob-code-inner js-file-line\">    [regionPrefix, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>*<span class=\"pl-pds\">&#39;</span></span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L2791\" class=\"blob-num js-line-number\" data-line-number=\"2791\"></td>\n        <td id=\"LC2791\" class=\"blob-code blob-code-inner js-file-line\">    [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>*<span class=\"pl-pds\">&#39;</span></span>, endpointPrefix],</td>\n      </tr>\n      <tr>\n        <td id=\"L2792\" class=\"blob-num js-line-number\" data-line-number=\"2792\"></td>\n        <td id=\"LC2792\" class=\"blob-code blob-code-inner js-file-line\">    [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>*<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>*<span class=\"pl-pds\">&#39;</span></span>]</td>\n      </tr>\n      <tr>\n        <td id=\"L2793\" class=\"blob-num js-line-number\" data-line-number=\"2793\"></td>\n        <td id=\"LC2793\" class=\"blob-code blob-code-inner js-file-line\">  ].<span class=\"pl-en\">map</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">item</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2794\" class=\"blob-num js-line-number\" data-line-number=\"2794\"></td>\n        <td id=\"LC2794\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> item[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">&amp;&amp;</span> item[<span class=\"pl-c1\">1</span>] <span class=\"pl-k\">?</span> <span class=\"pl-smi\">item</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2795\" class=\"blob-num js-line-number\" data-line-number=\"2795\"></td>\n        <td id=\"LC2795\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L2796\" class=\"blob-num js-line-number\" data-line-number=\"2796\"></td>\n        <td id=\"LC2796\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2797\" class=\"blob-num js-line-number\" data-line-number=\"2797\"></td>\n        <td id=\"LC2797\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2798\" class=\"blob-num js-line-number\" data-line-number=\"2798\"></td>\n        <td id=\"LC2798\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">applyConfig</span>(<span class=\"pl-smi\">service</span>, <span class=\"pl-smi\">config</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2799\" class=\"blob-num js-line-number\" data-line-number=\"2799\"></td>\n        <td id=\"LC2799\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(config, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2800\" class=\"blob-num js-line-number\" data-line-number=\"2800\"></td>\n        <td id=\"LC2800\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (key <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>globalEndpoint<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2801\" class=\"blob-num js-line-number\" data-line-number=\"2801\"></td>\n        <td id=\"LC2801\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>[key] <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>[key] <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2802\" class=\"blob-num js-line-number\" data-line-number=\"2802\"></td>\n        <td id=\"LC2802\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>[key] <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L2803\" class=\"blob-num js-line-number\" data-line-number=\"2803\"></td>\n        <td id=\"LC2803\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2804\" class=\"blob-num js-line-number\" data-line-number=\"2804\"></td>\n        <td id=\"LC2804\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L2805\" class=\"blob-num js-line-number\" data-line-number=\"2805\"></td>\n        <td id=\"LC2805\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2806\" class=\"blob-num js-line-number\" data-line-number=\"2806\"></td>\n        <td id=\"LC2806\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2807\" class=\"blob-num js-line-number\" data-line-number=\"2807\"></td>\n        <td id=\"LC2807\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">configureEndpoint</span>(<span class=\"pl-smi\">service</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2808\" class=\"blob-num js-line-number\" data-line-number=\"2808\"></td>\n        <td id=\"LC2808\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> keys <span class=\"pl-k\">=</span> <span class=\"pl-en\">derivedKeys</span>(service);</td>\n      </tr>\n      <tr>\n        <td id=\"L2809\" class=\"blob-num js-line-number\" data-line-number=\"2809\"></td>\n        <td id=\"LC2809\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">keys</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2810\" class=\"blob-num js-line-number\" data-line-number=\"2810\"></td>\n        <td id=\"LC2810\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> keys[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L2811\" class=\"blob-num js-line-number\" data-line-number=\"2811\"></td>\n        <td id=\"LC2811\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>key) <span class=\"pl-k\">continue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2812\" class=\"blob-num js-line-number\" data-line-number=\"2812\"></td>\n        <td id=\"LC2812\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2813\" class=\"blob-num js-line-number\" data-line-number=\"2813\"></td>\n        <td id=\"LC2813\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">regionConfig</span>.<span class=\"pl-c1\">rules</span>.<span class=\"pl-en\">hasOwnProperty</span>(key)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2814\" class=\"blob-num js-line-number\" data-line-number=\"2814\"></td>\n        <td id=\"LC2814\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> config <span class=\"pl-k\">=</span> <span class=\"pl-smi\">regionConfig</span>.<span class=\"pl-c1\">rules</span>[key];</td>\n      </tr>\n      <tr>\n        <td id=\"L2815\" class=\"blob-num js-line-number\" data-line-number=\"2815\"></td>\n        <td id=\"LC2815\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> config <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2816\" class=\"blob-num js-line-number\" data-line-number=\"2816\"></td>\n        <td id=\"LC2816\" class=\"blob-code blob-code-inner js-file-line\">        config <span class=\"pl-k\">=</span> <span class=\"pl-smi\">regionConfig</span>.<span class=\"pl-smi\">patterns</span>[config];</td>\n      </tr>\n      <tr>\n        <td id=\"L2817\" class=\"blob-num js-line-number\" data-line-number=\"2817\"></td>\n        <td id=\"LC2817\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2818\" class=\"blob-num js-line-number\" data-line-number=\"2818\"></td>\n        <td id=\"LC2818\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2819\" class=\"blob-num js-line-number\" data-line-number=\"2819\"></td>\n        <td id=\"LC2819\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">isGlobalEndpoint</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">!!</span><span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">globalEndpoint</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2820\" class=\"blob-num js-line-number\" data-line-number=\"2820\"></td>\n        <td id=\"LC2820\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2821\" class=\"blob-num js-line-number\" data-line-number=\"2821\"></td>\n        <td id=\"LC2821\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">signatureVersion</span>) <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">signatureVersion</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>v4<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2822\" class=\"blob-num js-line-number\" data-line-number=\"2822\"></td>\n        <td id=\"LC2822\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2823\" class=\"blob-num js-line-number\" data-line-number=\"2823\"></td>\n        <td id=\"LC2823\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">applyConfig</span>(service, config);</td>\n      </tr>\n      <tr>\n        <td id=\"L2824\" class=\"blob-num js-line-number\" data-line-number=\"2824\"></td>\n        <td id=\"LC2824\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2825\" class=\"blob-num js-line-number\" data-line-number=\"2825\"></td>\n        <td id=\"LC2825\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2826\" class=\"blob-num js-line-number\" data-line-number=\"2826\"></td>\n        <td id=\"LC2826\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2827\" class=\"blob-num js-line-number\" data-line-number=\"2827\"></td>\n        <td id=\"LC2827\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2828\" class=\"blob-num js-line-number\" data-line-number=\"2828\"></td>\n        <td id=\"LC2828\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2829\" class=\"blob-num js-line-number\" data-line-number=\"2829\"></td>\n        <td id=\"LC2829\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> configureEndpoint;</td>\n      </tr>\n      <tr>\n        <td id=\"L2830\" class=\"blob-num js-line-number\" data-line-number=\"2830\"></td>\n        <td id=\"LC2830\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2831\" class=\"blob-num js-line-number\" data-line-number=\"2831\"></td>\n        <td id=\"LC2831\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./region_config.json<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">29</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>}],<span class=\"pl-c1\">29</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L2832\" class=\"blob-num js-line-number\" data-line-number=\"2832\"></td>\n        <td id=\"LC2832\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span><span class=\"pl-k\">=</span>{</td>\n      </tr>\n      <tr>\n        <td id=\"L2833\" class=\"blob-num js-line-number\" data-line-number=\"2833\"></td>\n        <td id=\"LC2833\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>rules<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2834\" class=\"blob-num js-line-number\" data-line-number=\"2834\"></td>\n        <td id=\"LC2834\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>*/*<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2835\" class=\"blob-num js-line-number\" data-line-number=\"2835\"></td>\n        <td id=\"LC2835\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>endpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>{service}.{region}.amazonaws.com<span class=\"pl-pds\">&quot;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2836\" class=\"blob-num js-line-number\" data-line-number=\"2836\"></td>\n        <td id=\"LC2836\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L2837\" class=\"blob-num js-line-number\" data-line-number=\"2837\"></td>\n        <td id=\"LC2837\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>cn-*/*<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2838\" class=\"blob-num js-line-number\" data-line-number=\"2838\"></td>\n        <td id=\"LC2838\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>endpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>{service}.{region}.amazonaws.com.cn<span class=\"pl-pds\">&quot;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2839\" class=\"blob-num js-line-number\" data-line-number=\"2839\"></td>\n        <td id=\"LC2839\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L2840\" class=\"blob-num js-line-number\" data-line-number=\"2840\"></td>\n        <td id=\"LC2840\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>*/cloudfront<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>globalSSL<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2841\" class=\"blob-num js-line-number\" data-line-number=\"2841\"></td>\n        <td id=\"LC2841\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>*/iam<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>globalSSL<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2842\" class=\"blob-num js-line-number\" data-line-number=\"2842\"></td>\n        <td id=\"LC2842\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>*/sts<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>globalSSL<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2843\" class=\"blob-num js-line-number\" data-line-number=\"2843\"></td>\n        <td id=\"LC2843\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>*/importexport<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2844\" class=\"blob-num js-line-number\" data-line-number=\"2844\"></td>\n        <td id=\"LC2844\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>endpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>{service}.amazonaws.com<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2845\" class=\"blob-num js-line-number\" data-line-number=\"2845\"></td>\n        <td id=\"LC2845\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>signatureVersion<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>v2<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2846\" class=\"blob-num js-line-number\" data-line-number=\"2846\"></td>\n        <td id=\"LC2846\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>globalEndpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2847\" class=\"blob-num js-line-number\" data-line-number=\"2847\"></td>\n        <td id=\"LC2847\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L2848\" class=\"blob-num js-line-number\" data-line-number=\"2848\"></td>\n        <td id=\"LC2848\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>*/route53<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2849\" class=\"blob-num js-line-number\" data-line-number=\"2849\"></td>\n        <td id=\"LC2849\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>endpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>https://{service}.amazonaws.com<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2850\" class=\"blob-num js-line-number\" data-line-number=\"2850\"></td>\n        <td id=\"LC2850\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>signatureVersion<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>v3https<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2851\" class=\"blob-num js-line-number\" data-line-number=\"2851\"></td>\n        <td id=\"LC2851\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>globalEndpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2852\" class=\"blob-num js-line-number\" data-line-number=\"2852\"></td>\n        <td id=\"LC2852\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L2853\" class=\"blob-num js-line-number\" data-line-number=\"2853\"></td>\n        <td id=\"LC2853\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>*/waf<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>globalSSL<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2854\" class=\"blob-num js-line-number\" data-line-number=\"2854\"></td>\n        <td id=\"LC2854\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>us-gov-*/iam<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>globalGovCloud<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2855\" class=\"blob-num js-line-number\" data-line-number=\"2855\"></td>\n        <td id=\"LC2855\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>us-gov-*/sts<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2856\" class=\"blob-num js-line-number\" data-line-number=\"2856\"></td>\n        <td id=\"LC2856\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>endpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>{service}.{region}.amazonaws.com<span class=\"pl-pds\">&quot;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2857\" class=\"blob-num js-line-number\" data-line-number=\"2857\"></td>\n        <td id=\"LC2857\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L2858\" class=\"blob-num js-line-number\" data-line-number=\"2858\"></td>\n        <td id=\"LC2858\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>us-gov-west-1/s3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>s3dash<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2859\" class=\"blob-num js-line-number\" data-line-number=\"2859\"></td>\n        <td id=\"LC2859\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>us-west-1/s3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>s3dash<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2860\" class=\"blob-num js-line-number\" data-line-number=\"2860\"></td>\n        <td id=\"LC2860\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>us-west-2/s3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>s3dash<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2861\" class=\"blob-num js-line-number\" data-line-number=\"2861\"></td>\n        <td id=\"LC2861\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>eu-west-1/s3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>s3dash<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2862\" class=\"blob-num js-line-number\" data-line-number=\"2862\"></td>\n        <td id=\"LC2862\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>ap-southeast-1/s3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>s3dash<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2863\" class=\"blob-num js-line-number\" data-line-number=\"2863\"></td>\n        <td id=\"LC2863\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>ap-southeast-2/s3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>s3dash<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2864\" class=\"blob-num js-line-number\" data-line-number=\"2864\"></td>\n        <td id=\"LC2864\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>ap-northeast-1/s3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>s3dash<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2865\" class=\"blob-num js-line-number\" data-line-number=\"2865\"></td>\n        <td id=\"LC2865\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>sa-east-1/s3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>s3dash<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2866\" class=\"blob-num js-line-number\" data-line-number=\"2866\"></td>\n        <td id=\"LC2866\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>us-east-1/s3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2867\" class=\"blob-num js-line-number\" data-line-number=\"2867\"></td>\n        <td id=\"LC2867\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>endpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>{service}.amazonaws.com<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2868\" class=\"blob-num js-line-number\" data-line-number=\"2868\"></td>\n        <td id=\"LC2868\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>signatureVersion<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>s3<span class=\"pl-pds\">&quot;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2869\" class=\"blob-num js-line-number\" data-line-number=\"2869\"></td>\n        <td id=\"LC2869\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L2870\" class=\"blob-num js-line-number\" data-line-number=\"2870\"></td>\n        <td id=\"LC2870\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>us-east-1/sdb<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2871\" class=\"blob-num js-line-number\" data-line-number=\"2871\"></td>\n        <td id=\"LC2871\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>endpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>{service}.amazonaws.com<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2872\" class=\"blob-num js-line-number\" data-line-number=\"2872\"></td>\n        <td id=\"LC2872\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>signatureVersion<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>v2<span class=\"pl-pds\">&quot;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2873\" class=\"blob-num js-line-number\" data-line-number=\"2873\"></td>\n        <td id=\"LC2873\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L2874\" class=\"blob-num js-line-number\" data-line-number=\"2874\"></td>\n        <td id=\"LC2874\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>*/sdb<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2875\" class=\"blob-num js-line-number\" data-line-number=\"2875\"></td>\n        <td id=\"LC2875\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>endpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>{service}.{region}.amazonaws.com<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2876\" class=\"blob-num js-line-number\" data-line-number=\"2876\"></td>\n        <td id=\"LC2876\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>signatureVersion<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>v2<span class=\"pl-pds\">&quot;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2877\" class=\"blob-num js-line-number\" data-line-number=\"2877\"></td>\n        <td id=\"LC2877\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2878\" class=\"blob-num js-line-number\" data-line-number=\"2878\"></td>\n        <td id=\"LC2878\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2879\" class=\"blob-num js-line-number\" data-line-number=\"2879\"></td>\n        <td id=\"LC2879\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2880\" class=\"blob-num js-line-number\" data-line-number=\"2880\"></td>\n        <td id=\"LC2880\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>patterns<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2881\" class=\"blob-num js-line-number\" data-line-number=\"2881\"></td>\n        <td id=\"LC2881\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>globalSSL<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2882\" class=\"blob-num js-line-number\" data-line-number=\"2882\"></td>\n        <td id=\"LC2882\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>endpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>https://{service}.amazonaws.com<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2883\" class=\"blob-num js-line-number\" data-line-number=\"2883\"></td>\n        <td id=\"LC2883\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>globalEndpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L2884\" class=\"blob-num js-line-number\" data-line-number=\"2884\"></td>\n        <td id=\"LC2884\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L2885\" class=\"blob-num js-line-number\" data-line-number=\"2885\"></td>\n        <td id=\"LC2885\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>globalGovCloud<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2886\" class=\"blob-num js-line-number\" data-line-number=\"2886\"></td>\n        <td id=\"LC2886\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>endpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>{service}.us-gov.amazonaws.com<span class=\"pl-pds\">&quot;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2887\" class=\"blob-num js-line-number\" data-line-number=\"2887\"></td>\n        <td id=\"LC2887\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L2888\" class=\"blob-num js-line-number\" data-line-number=\"2888\"></td>\n        <td id=\"LC2888\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>s3dash<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2889\" class=\"blob-num js-line-number\" data-line-number=\"2889\"></td>\n        <td id=\"LC2889\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>endpoint<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>{service}-{region}.amazonaws.com<span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L2890\" class=\"blob-num js-line-number\" data-line-number=\"2890\"></td>\n        <td id=\"LC2890\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>signatureVersion<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>s3<span class=\"pl-pds\">&quot;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L2891\" class=\"blob-num js-line-number\" data-line-number=\"2891\"></td>\n        <td id=\"LC2891\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2892\" class=\"blob-num js-line-number\" data-line-number=\"2892\"></td>\n        <td id=\"LC2892\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L2893\" class=\"blob-num js-line-number\" data-line-number=\"2893\"></td>\n        <td id=\"LC2893\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2894\" class=\"blob-num js-line-number\" data-line-number=\"2894\"></td>\n        <td id=\"LC2894\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2895\" class=\"blob-num js-line-number\" data-line-number=\"2895\"></td>\n        <td id=\"LC2895\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">30</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L2896\" class=\"blob-num js-line-number\" data-line-number=\"2896\"></td>\n        <td id=\"LC2896\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span> (<span class=\"pl-c1\">process</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L2897\" class=\"blob-num js-line-number\" data-line-number=\"2897\"></td>\n        <td id=\"LC2897\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2898\" class=\"blob-num js-line-number\" data-line-number=\"2898\"></td>\n        <td id=\"LC2898\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> AcceptorStateMachine <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./state_machine<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2899\" class=\"blob-num js-line-number\" data-line-number=\"2899\"></td>\n        <td id=\"LC2899\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2900\" class=\"blob-num js-line-number\" data-line-number=\"2900\"></td>\n        <td id=\"LC2900\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> domain <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">nodeRequire</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>domain<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2901\" class=\"blob-num js-line-number\" data-line-number=\"2901\"></td>\n        <td id=\"LC2901\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2902\" class=\"blob-num js-line-number\" data-line-number=\"2902\"></td>\n        <td id=\"LC2902\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2903\" class=\"blob-num js-line-number\" data-line-number=\"2903\"></td>\n        <td id=\"LC2903\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> hardErrorStates <span class=\"pl-k\">=</span> {success<span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>, error<span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>, complete<span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>};</td>\n      </tr>\n      <tr>\n        <td id=\"L2904\" class=\"blob-num js-line-number\" data-line-number=\"2904\"></td>\n        <td id=\"LC2904\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2905\" class=\"blob-num js-line-number\" data-line-number=\"2905\"></td>\n        <td id=\"LC2905\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isTerminalState</span>(<span class=\"pl-smi\">machine</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2906\" class=\"blob-num js-line-number\" data-line-number=\"2906\"></td>\n        <td id=\"LC2906\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">hardErrorStates</span>.<span class=\"pl-en\">hasOwnProperty</span>(<span class=\"pl-smi\">machine</span>.<span class=\"pl-smi\">_asm</span>.<span class=\"pl-smi\">currentState</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2907\" class=\"blob-num js-line-number\" data-line-number=\"2907\"></td>\n        <td id=\"LC2907\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L2908\" class=\"blob-num js-line-number\" data-line-number=\"2908\"></td>\n        <td id=\"LC2908\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2909\" class=\"blob-num js-line-number\" data-line-number=\"2909\"></td>\n        <td id=\"LC2909\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> fsm <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AcceptorStateMachine</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2910\" class=\"blob-num js-line-number\" data-line-number=\"2910\"></td>\n        <td id=\"LC2910\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">fsm</span>.<span class=\"pl-en\">setupStates</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L2911\" class=\"blob-num js-line-number\" data-line-number=\"2911\"></td>\n        <td id=\"LC2911\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> <span class=\"pl-en\">transition</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">_</span>, <span class=\"pl-smi\">done</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2912\" class=\"blob-num js-line-number\" data-line-number=\"2912\"></td>\n        <td id=\"LC2912\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2913\" class=\"blob-num js-line-number\" data-line-number=\"2913\"></td>\n        <td id=\"LC2913\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">_haltHandlersOnError</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2914\" class=\"blob-num js-line-number\" data-line-number=\"2914\"></td>\n        <td id=\"LC2914\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2915\" class=\"blob-num js-line-number\" data-line-number=\"2915\"></td>\n        <td id=\"LC2915\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">_asm</span>.<span class=\"pl-smi\">currentState</span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2916\" class=\"blob-num js-line-number\" data-line-number=\"2916\"></td>\n        <td id=\"LC2916\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2917\" class=\"blob-num js-line-number\" data-line-number=\"2917\"></td>\n        <td id=\"LC2917\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isTerminalState</span>(self)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2918\" class=\"blob-num js-line-number\" data-line-number=\"2918\"></td>\n        <td id=\"LC2918\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (domain <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">domain</span> <span class=\"pl-k\">instanceof</span> <span class=\"pl-smi\">domain</span>.<span class=\"pl-smi\">Domain</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2919\" class=\"blob-num js-line-number\" data-line-number=\"2919\"></td>\n        <td id=\"LC2919\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">domainEmitter</span> <span class=\"pl-k\">=</span> self;</td>\n      </tr>\n      <tr>\n        <td id=\"L2920\" class=\"blob-num js-line-number\" data-line-number=\"2920\"></td>\n        <td id=\"LC2920\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">domain</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">domain</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2921\" class=\"blob-num js-line-number\" data-line-number=\"2921\"></td>\n        <td id=\"LC2921\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">domainThrown</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2922\" class=\"blob-num js-line-number\" data-line-number=\"2922\"></td>\n        <td id=\"LC2922\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">domain</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>, err);</td>\n      </tr>\n      <tr>\n        <td id=\"L2923\" class=\"blob-num js-line-number\" data-line-number=\"2923\"></td>\n        <td id=\"LC2923\" class=\"blob-code blob-code-inner js-file-line\">          } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2924\" class=\"blob-num js-line-number\" data-line-number=\"2924\"></td>\n        <td id=\"LC2924\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">throw</span> err;</td>\n      </tr>\n      <tr>\n        <td id=\"L2925\" class=\"blob-num js-line-number\" data-line-number=\"2925\"></td>\n        <td id=\"LC2925\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L2926\" class=\"blob-num js-line-number\" data-line-number=\"2926\"></td>\n        <td id=\"LC2926\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2927\" class=\"blob-num js-line-number\" data-line-number=\"2927\"></td>\n        <td id=\"LC2927\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> err;</td>\n      </tr>\n      <tr>\n        <td id=\"L2928\" class=\"blob-num js-line-number\" data-line-number=\"2928\"></td>\n        <td id=\"LC2928\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">done</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L2929\" class=\"blob-num js-line-number\" data-line-number=\"2929\"></td>\n        <td id=\"LC2929\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L2930\" class=\"blob-num js-line-number\" data-line-number=\"2930\"></td>\n        <td id=\"LC2930\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L2931\" class=\"blob-num js-line-number\" data-line-number=\"2931\"></td>\n        <td id=\"LC2931\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">done</span>(<span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2932\" class=\"blob-num js-line-number\" data-line-number=\"2932\"></td>\n        <td id=\"LC2932\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L2933\" class=\"blob-num js-line-number\" data-line-number=\"2933\"></td>\n        <td id=\"LC2933\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L2934\" class=\"blob-num js-line-number\" data-line-number=\"2934\"></td>\n        <td id=\"LC2934\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2935\" class=\"blob-num js-line-number\" data-line-number=\"2935\"></td>\n        <td id=\"LC2935\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L2936\" class=\"blob-num js-line-number\" data-line-number=\"2936\"></td>\n        <td id=\"LC2936\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2937\" class=\"blob-num js-line-number\" data-line-number=\"2937\"></td>\n        <td id=\"LC2937\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validate<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2938\" class=\"blob-num js-line-number\" data-line-number=\"2938\"></td>\n        <td id=\"LC2938\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterBuild<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>restart<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2939\" class=\"blob-num js-line-number\" data-line-number=\"2939\"></td>\n        <td id=\"LC2939\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterBuild<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sign<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>restart<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2940\" class=\"blob-num js-line-number\" data-line-number=\"2940\"></td>\n        <td id=\"LC2940\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sign<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>send<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2941\" class=\"blob-num js-line-number\" data-line-number=\"2941\"></td>\n        <td id=\"LC2941\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterRetry<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterRetry<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2942\" class=\"blob-num js-line-number\" data-line-number=\"2942\"></td>\n        <td id=\"LC2942\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterRetry<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sign<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2943\" class=\"blob-num js-line-number\" data-line-number=\"2943\"></td>\n        <td id=\"LC2943\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>send<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validateResponse<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2944\" class=\"blob-num js-line-number\" data-line-number=\"2944\"></td>\n        <td id=\"LC2944\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validateResponse<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractError<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2945\" class=\"blob-num js-line-number\" data-line-number=\"2945\"></td>\n        <td id=\"LC2945\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2946\" class=\"blob-num js-line-number\" data-line-number=\"2946\"></td>\n        <td id=\"LC2946\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>success<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2947\" class=\"blob-num js-line-number\" data-line-number=\"2947\"></td>\n        <td id=\"LC2947\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>restart<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2948\" class=\"blob-num js-line-number\" data-line-number=\"2948\"></td>\n        <td id=\"LC2948\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>success<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>complete<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>complete<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2949\" class=\"blob-num js-line-number\" data-line-number=\"2949\"></td>\n        <td id=\"LC2949\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>complete<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>complete<span class=\"pl-pds\">&#39;</span></span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2950\" class=\"blob-num js-line-number\" data-line-number=\"2950\"></td>\n        <td id=\"LC2950\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addState</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>complete<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">null</span>, <span class=\"pl-c1\">null</span>, transition);</td>\n      </tr>\n      <tr>\n        <td id=\"L2951\" class=\"blob-num js-line-number\" data-line-number=\"2951\"></td>\n        <td id=\"LC2951\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L2952\" class=\"blob-num js-line-number\" data-line-number=\"2952\"></td>\n        <td id=\"LC2952\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">fsm</span>.<span class=\"pl-en\">setupStates</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2953\" class=\"blob-num js-line-number\" data-line-number=\"2953\"></td>\n        <td id=\"LC2953\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2954\" class=\"blob-num js-line-number\" data-line-number=\"2954\"></td>\n        <td id=\"LC2954\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2955\" class=\"blob-num js-line-number\" data-line-number=\"2955\"></td>\n        <td id=\"LC2955\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Request</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L2956\" class=\"blob-num js-line-number\" data-line-number=\"2956\"></td>\n        <td id=\"LC2956\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2957\" class=\"blob-num js-line-number\" data-line-number=\"2957\"></td>\n        <td id=\"LC2957\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2958\" class=\"blob-num js-line-number\" data-line-number=\"2958\"></td>\n        <td id=\"LC2958\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">Request</span>(<span class=\"pl-smi\">service</span>, <span class=\"pl-smi\">operation</span>, <span class=\"pl-smi\">params</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2959\" class=\"blob-num js-line-number\" data-line-number=\"2959\"></td>\n        <td id=\"LC2959\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> endpoint <span class=\"pl-k\">=</span> <span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">endpoint</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2960\" class=\"blob-num js-line-number\" data-line-number=\"2960\"></td>\n        <td id=\"LC2960\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> region <span class=\"pl-k\">=</span> <span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">region</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2961\" class=\"blob-num js-line-number\" data-line-number=\"2961\"></td>\n        <td id=\"LC2961\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> customUserAgent <span class=\"pl-k\">=</span> <span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">customUserAgent</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2962\" class=\"blob-num js-line-number\" data-line-number=\"2962\"></td>\n        <td id=\"LC2962\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2963\" class=\"blob-num js-line-number\" data-line-number=\"2963\"></td>\n        <td id=\"LC2963\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">isGlobalEndpoint</span>) region <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>us-east-1<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2964\" class=\"blob-num js-line-number\" data-line-number=\"2964\"></td>\n        <td id=\"LC2964\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2965\" class=\"blob-num js-line-number\" data-line-number=\"2965\"></td>\n        <td id=\"LC2965\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">domain</span> <span class=\"pl-k\">=</span> domain <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">domain</span>.<span class=\"pl-smi\">active</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2966\" class=\"blob-num js-line-number\" data-line-number=\"2966\"></td>\n        <td id=\"LC2966\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span> <span class=\"pl-k\">=</span> service;</td>\n      </tr>\n      <tr>\n        <td id=\"L2967\" class=\"blob-num js-line-number\" data-line-number=\"2967\"></td>\n        <td id=\"LC2967\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">operation</span> <span class=\"pl-k\">=</span> operation;</td>\n      </tr>\n      <tr>\n        <td id=\"L2968\" class=\"blob-num js-line-number\" data-line-number=\"2968\"></td>\n        <td id=\"LC2968\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">params</span> <span class=\"pl-k\">=</span> params <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L2969\" class=\"blob-num js-line-number\" data-line-number=\"2969\"></td>\n        <td id=\"LC2969\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">httpRequest</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.HttpRequest</span>(endpoint, region, customUserAgent);</td>\n      </tr>\n      <tr>\n        <td id=\"L2970\" class=\"blob-num js-line-number\" data-line-number=\"2970\"></td>\n        <td id=\"LC2970\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">startTime</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-c1\">getDate</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2971\" class=\"blob-num js-line-number\" data-line-number=\"2971\"></td>\n        <td id=\"LC2971\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2972\" class=\"blob-num js-line-number\" data-line-number=\"2972\"></td>\n        <td id=\"LC2972\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.Response</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2973\" class=\"blob-num js-line-number\" data-line-number=\"2973\"></td>\n        <td id=\"LC2973\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_asm</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AcceptorStateMachine</span>(<span class=\"pl-smi\">fsm</span>.<span class=\"pl-smi\">states</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validate<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2974\" class=\"blob-num js-line-number\" data-line-number=\"2974\"></td>\n        <td id=\"LC2974\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_haltHandlersOnError</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2975\" class=\"blob-num js-line-number\" data-line-number=\"2975\"></td>\n        <td id=\"LC2975\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2976\" class=\"blob-num js-line-number\" data-line-number=\"2976\"></td>\n        <td id=\"LC2976\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">SequentialExecutor</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2977\" class=\"blob-num js-line-number\" data-line-number=\"2977\"></td>\n        <td id=\"LC2977\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">emit</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">emitEvent</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2978\" class=\"blob-num js-line-number\" data-line-number=\"2978\"></td>\n        <td id=\"LC2978\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2979\" class=\"blob-num js-line-number\" data-line-number=\"2979\"></td>\n        <td id=\"LC2979\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2980\" class=\"blob-num js-line-number\" data-line-number=\"2980\"></td>\n        <td id=\"LC2980\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2981\" class=\"blob-num js-line-number\" data-line-number=\"2981\"></td>\n        <td id=\"LC2981\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2982\" class=\"blob-num js-line-number\" data-line-number=\"2982\"></td>\n        <td id=\"LC2982\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2983\" class=\"blob-num js-line-number\" data-line-number=\"2983\"></td>\n        <td id=\"LC2983\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">send</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">send</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2984\" class=\"blob-num js-line-number\" data-line-number=\"2984\"></td>\n        <td id=\"LC2984\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (callback) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2985\" class=\"blob-num js-line-number\" data-line-number=\"2985\"></td>\n        <td id=\"LC2985\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>complete<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2986\" class=\"blob-num js-line-number\" data-line-number=\"2986\"></td>\n        <td id=\"LC2986\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">callback</span>.<span class=\"pl-c1\">call</span>(resp, <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>, <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L2987\" class=\"blob-num js-line-number\" data-line-number=\"2987\"></td>\n        <td id=\"LC2987\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L2988\" class=\"blob-num js-line-number\" data-line-number=\"2988\"></td>\n        <td id=\"LC2988\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L2989\" class=\"blob-num js-line-number\" data-line-number=\"2989\"></td>\n        <td id=\"LC2989\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">runTo</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L2990\" class=\"blob-num js-line-number\" data-line-number=\"2990\"></td>\n        <td id=\"LC2990\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2991\" class=\"blob-num js-line-number\" data-line-number=\"2991\"></td>\n        <td id=\"LC2991\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L2992\" class=\"blob-num js-line-number\" data-line-number=\"2992\"></td>\n        <td id=\"LC2992\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2993\" class=\"blob-num js-line-number\" data-line-number=\"2993\"></td>\n        <td id=\"LC2993\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2994\" class=\"blob-num js-line-number\" data-line-number=\"2994\"></td>\n        <td id=\"LC2994\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2995\" class=\"blob-num js-line-number\" data-line-number=\"2995\"></td>\n        <td id=\"LC2995\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">build</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">build</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L2996\" class=\"blob-num js-line-number\" data-line-number=\"2996\"></td>\n        <td id=\"LC2996\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">runTo</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>send<span class=\"pl-pds\">&#39;</span></span>, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L2997\" class=\"blob-num js-line-number\" data-line-number=\"2997\"></td>\n        <td id=\"LC2997\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L2998\" class=\"blob-num js-line-number\" data-line-number=\"2998\"></td>\n        <td id=\"LC2998\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L2999\" class=\"blob-num js-line-number\" data-line-number=\"2999\"></td>\n        <td id=\"LC2999\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3000\" class=\"blob-num js-line-number\" data-line-number=\"3000\"></td>\n        <td id=\"LC3000\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">runTo</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">runTo</span>(<span class=\"pl-smi\">state</span>, <span class=\"pl-smi\">done</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3001\" class=\"blob-num js-line-number\" data-line-number=\"3001\"></td>\n        <td id=\"LC3001\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_asm</span>.<span class=\"pl-en\">runTo</span>(state, done, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3002\" class=\"blob-num js-line-number\" data-line-number=\"3002\"></td>\n        <td id=\"LC3002\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3003\" class=\"blob-num js-line-number\" data-line-number=\"3003\"></td>\n        <td id=\"LC3003\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3004\" class=\"blob-num js-line-number\" data-line-number=\"3004\"></td>\n        <td id=\"LC3004\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3005\" class=\"blob-num js-line-number\" data-line-number=\"3005\"></td>\n        <td id=\"LC3005\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3006\" class=\"blob-num js-line-number\" data-line-number=\"3006\"></td>\n        <td id=\"LC3006\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">abort</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">abort</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3007\" class=\"blob-num js-line-number\" data-line-number=\"3007\"></td>\n        <td id=\"LC3007\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">removeAllListeners</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validateResponse<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3008\" class=\"blob-num js-line-number\" data-line-number=\"3008\"></td>\n        <td id=\"LC3008\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">removeAllListeners</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractError<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3009\" class=\"blob-num js-line-number\" data-line-number=\"3009\"></td>\n        <td id=\"LC3009\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validateResponse<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">addAbortedError</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3010\" class=\"blob-num js-line-number\" data-line-number=\"3010\"></td>\n        <td id=\"LC3010\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Request aborted by user<span class=\"pl-pds\">&#39;</span></span>), {</td>\n      </tr>\n      <tr>\n        <td id=\"L3011\" class=\"blob-num js-line-number\" data-line-number=\"3011\"></td>\n        <td id=\"LC3011\" class=\"blob-code blob-code-inner js-file-line\">         code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RequestAbortedError<span class=\"pl-pds\">&#39;</span></span>, retryable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3012\" class=\"blob-num js-line-number\" data-line-number=\"3012\"></td>\n        <td id=\"LC3012\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3013\" class=\"blob-num js-line-number\" data-line-number=\"3013\"></td>\n        <td id=\"LC3013\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L3014\" class=\"blob-num js-line-number\" data-line-number=\"3014\"></td>\n        <td id=\"LC3014\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3015\" class=\"blob-num js-line-number\" data-line-number=\"3015\"></td>\n        <td id=\"LC3015\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">stream</span>) { <span class=\"pl-c\">// abort HTTP stream</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3016\" class=\"blob-num js-line-number\" data-line-number=\"3016\"></td>\n        <td id=\"LC3016\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">stream</span>.<span class=\"pl-c1\">abort</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3017\" class=\"blob-num js-line-number\" data-line-number=\"3017\"></td>\n        <td id=\"LC3017\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">_abortCallback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3018\" class=\"blob-num js-line-number\" data-line-number=\"3018\"></td>\n        <td id=\"LC3018\" class=\"blob-code blob-code-inner js-file-line\">         <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-en\">_abortCallback</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3019\" class=\"blob-num js-line-number\" data-line-number=\"3019\"></td>\n        <td id=\"LC3019\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3020\" class=\"blob-num js-line-number\" data-line-number=\"3020\"></td>\n        <td id=\"LC3020\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">removeAllListeners</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>send<span class=\"pl-pds\">&#39;</span></span>); <span class=\"pl-c\">// haven&#39;t sent yet, so let&#39;s not</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3021\" class=\"blob-num js-line-number\" data-line-number=\"3021\"></td>\n        <td id=\"LC3021\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3022\" class=\"blob-num js-line-number\" data-line-number=\"3022\"></td>\n        <td id=\"LC3022\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3023\" class=\"blob-num js-line-number\" data-line-number=\"3023\"></td>\n        <td id=\"LC3023\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3024\" class=\"blob-num js-line-number\" data-line-number=\"3024\"></td>\n        <td id=\"LC3024\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3025\" class=\"blob-num js-line-number\" data-line-number=\"3025\"></td>\n        <td id=\"LC3025\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3026\" class=\"blob-num js-line-number\" data-line-number=\"3026\"></td>\n        <td id=\"LC3026\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3027\" class=\"blob-num js-line-number\" data-line-number=\"3027\"></td>\n        <td id=\"LC3027\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3028\" class=\"blob-num js-line-number\" data-line-number=\"3028\"></td>\n        <td id=\"LC3028\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">eachPage</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">eachPage</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3029\" class=\"blob-num js-line-number\" data-line-number=\"3029\"></td>\n        <td id=\"LC3029\" class=\"blob-code blob-code-inner js-file-line\">    callback <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">fn</span>.<span class=\"pl-en\">makeAsync</span>(callback, <span class=\"pl-c1\">3</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3030\" class=\"blob-num js-line-number\" data-line-number=\"3030\"></td>\n        <td id=\"LC3030\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3031\" class=\"blob-num js-line-number\" data-line-number=\"3031\"></td>\n        <td id=\"LC3031\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">wrappedCallback</span>(<span class=\"pl-smi\">response</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3032\" class=\"blob-num js-line-number\" data-line-number=\"3032\"></td>\n        <td id=\"LC3032\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">callback</span>.<span class=\"pl-c1\">call</span>(response, <span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span>, <span class=\"pl-smi\">response</span>.<span class=\"pl-c1\">data</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">result</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3033\" class=\"blob-num js-line-number\" data-line-number=\"3033\"></td>\n        <td id=\"LC3033\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (result <span class=\"pl-k\">===</span> <span class=\"pl-c1\">false</span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3034\" class=\"blob-num js-line-number\" data-line-number=\"3034\"></td>\n        <td id=\"LC3034\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3035\" class=\"blob-num js-line-number\" data-line-number=\"3035\"></td>\n        <td id=\"LC3035\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">response</span>.<span class=\"pl-en\">hasNextPage</span>()) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3036\" class=\"blob-num js-line-number\" data-line-number=\"3036\"></td>\n        <td id=\"LC3036\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">response</span>.<span class=\"pl-en\">nextPage</span>().<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>complete<span class=\"pl-pds\">&#39;</span></span>, wrappedCallback).<span class=\"pl-c1\">send</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3037\" class=\"blob-num js-line-number\" data-line-number=\"3037\"></td>\n        <td id=\"LC3037\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3038\" class=\"blob-num js-line-number\" data-line-number=\"3038\"></td>\n        <td id=\"LC3038\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">callback</span>.<span class=\"pl-c1\">call</span>(response, <span class=\"pl-c1\">null</span>, <span class=\"pl-c1\">null</span>, <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">fn</span>.<span class=\"pl-smi\">noop</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3039\" class=\"blob-num js-line-number\" data-line-number=\"3039\"></td>\n        <td id=\"LC3039\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3040\" class=\"blob-num js-line-number\" data-line-number=\"3040\"></td>\n        <td id=\"LC3040\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3041\" class=\"blob-num js-line-number\" data-line-number=\"3041\"></td>\n        <td id=\"LC3041\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3042\" class=\"blob-num js-line-number\" data-line-number=\"3042\"></td>\n        <td id=\"LC3042\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3043\" class=\"blob-num js-line-number\" data-line-number=\"3043\"></td>\n        <td id=\"LC3043\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>complete<span class=\"pl-pds\">&#39;</span></span>, wrappedCallback).<span class=\"pl-c1\">send</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3044\" class=\"blob-num js-line-number\" data-line-number=\"3044\"></td>\n        <td id=\"LC3044\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3045\" class=\"blob-num js-line-number\" data-line-number=\"3045\"></td>\n        <td id=\"LC3045\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3046\" class=\"blob-num js-line-number\" data-line-number=\"3046\"></td>\n        <td id=\"LC3046\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3047\" class=\"blob-num js-line-number\" data-line-number=\"3047\"></td>\n        <td id=\"LC3047\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">eachItem</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">eachItem</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3048\" class=\"blob-num js-line-number\" data-line-number=\"3048\"></td>\n        <td id=\"LC3048\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3049\" class=\"blob-num js-line-number\" data-line-number=\"3049\"></td>\n        <td id=\"LC3049\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">wrappedCallback</span>(<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3050\" class=\"blob-num js-line-number\" data-line-number=\"3050\"></td>\n        <td id=\"LC3050\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (err) <span class=\"pl-k\">return</span> <span class=\"pl-en\">callback</span>(err, <span class=\"pl-c1\">null</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3051\" class=\"blob-num js-line-number\" data-line-number=\"3051\"></td>\n        <td id=\"LC3051\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (data <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) <span class=\"pl-k\">return</span> <span class=\"pl-en\">callback</span>(<span class=\"pl-c1\">null</span>, <span class=\"pl-c1\">null</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3052\" class=\"blob-num js-line-number\" data-line-number=\"3052\"></td>\n        <td id=\"LC3052\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3053\" class=\"blob-num js-line-number\" data-line-number=\"3053\"></td>\n        <td id=\"LC3053\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> config <span class=\"pl-k\">=</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">paginationConfig</span>(<span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">operation</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3054\" class=\"blob-num js-line-number\" data-line-number=\"3054\"></td>\n        <td id=\"LC3054\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> resultKey <span class=\"pl-k\">=</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">resultKey</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3055\" class=\"blob-num js-line-number\" data-line-number=\"3055\"></td>\n        <td id=\"LC3055\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">Array</span>.<span class=\"pl-en\">isArray</span>(resultKey)) resultKey <span class=\"pl-k\">=</span> resultKey[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L3056\" class=\"blob-num js-line-number\" data-line-number=\"3056\"></td>\n        <td id=\"LC3056\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> results <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">jamespath</span>.<span class=\"pl-en\">query</span>(resultKey, data);</td>\n      </tr>\n      <tr>\n        <td id=\"L3057\" class=\"blob-num js-line-number\" data-line-number=\"3057\"></td>\n        <td id=\"LC3057\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(results, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">result</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3058\" class=\"blob-num js-line-number\" data-line-number=\"3058\"></td>\n        <td id=\"LC3058\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(result, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">item</span>) { <span class=\"pl-en\">callback</span>(<span class=\"pl-c1\">null</span>, item); });</td>\n      </tr>\n      <tr>\n        <td id=\"L3059\" class=\"blob-num js-line-number\" data-line-number=\"3059\"></td>\n        <td id=\"LC3059\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3060\" class=\"blob-num js-line-number\" data-line-number=\"3060\"></td>\n        <td id=\"LC3060\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3061\" class=\"blob-num js-line-number\" data-line-number=\"3061\"></td>\n        <td id=\"LC3061\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3062\" class=\"blob-num js-line-number\" data-line-number=\"3062\"></td>\n        <td id=\"LC3062\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">eachPage</span>(wrappedCallback);</td>\n      </tr>\n      <tr>\n        <td id=\"L3063\" class=\"blob-num js-line-number\" data-line-number=\"3063\"></td>\n        <td id=\"LC3063\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3064\" class=\"blob-num js-line-number\" data-line-number=\"3064\"></td>\n        <td id=\"LC3064\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3065\" class=\"blob-num js-line-number\" data-line-number=\"3065\"></td>\n        <td id=\"LC3065\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3066\" class=\"blob-num js-line-number\" data-line-number=\"3066\"></td>\n        <td id=\"LC3066\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">isPageable</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">isPageable</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3067\" class=\"blob-num js-line-number\" data-line-number=\"3067\"></td>\n        <td id=\"LC3067\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">paginationConfig</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">operation</span>) <span class=\"pl-k\">?</span> <span class=\"pl-c1\">true</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3068\" class=\"blob-num js-line-number\" data-line-number=\"3068\"></td>\n        <td id=\"LC3068\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3069\" class=\"blob-num js-line-number\" data-line-number=\"3069\"></td>\n        <td id=\"LC3069\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3070\" class=\"blob-num js-line-number\" data-line-number=\"3070\"></td>\n        <td id=\"LC3070\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3071\" class=\"blob-num js-line-number\" data-line-number=\"3071\"></td>\n        <td id=\"LC3071\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">createReadStream</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">createReadStream</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3072\" class=\"blob-num js-line-number\" data-line-number=\"3072\"></td>\n        <td id=\"LC3072\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> streams <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">nodeRequire</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>stream<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3073\" class=\"blob-num js-line-number\" data-line-number=\"3073\"></td>\n        <td id=\"LC3073\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> req <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3074\" class=\"blob-num js-line-number\" data-line-number=\"3074\"></td>\n        <td id=\"LC3074\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> stream <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3075\" class=\"blob-num js-line-number\" data-line-number=\"3075\"></td>\n        <td id=\"LC3075\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3076\" class=\"blob-num js-line-number\" data-line-number=\"3076\"></td>\n        <td id=\"LC3076\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">HttpClient</span>.<span class=\"pl-smi\">streamsApiVersion</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">2</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3077\" class=\"blob-num js-line-number\" data-line-number=\"3077\"></td>\n        <td id=\"LC3077\" class=\"blob-code blob-code-inner js-file-line\">      stream <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">streams.PassThrough</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3078\" class=\"blob-num js-line-number\" data-line-number=\"3078\"></td>\n        <td id=\"LC3078\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">req</span>.<span class=\"pl-c1\">send</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3079\" class=\"blob-num js-line-number\" data-line-number=\"3079\"></td>\n        <td id=\"LC3079\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3080\" class=\"blob-num js-line-number\" data-line-number=\"3080\"></td>\n        <td id=\"LC3080\" class=\"blob-code blob-code-inner js-file-line\">      stream <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">streams.Stream</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3081\" class=\"blob-num js-line-number\" data-line-number=\"3081\"></td>\n        <td id=\"LC3081\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">stream</span>.<span class=\"pl-smi\">readable</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3082\" class=\"blob-num js-line-number\" data-line-number=\"3082\"></td>\n        <td id=\"LC3082\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3083\" class=\"blob-num js-line-number\" data-line-number=\"3083\"></td>\n        <td id=\"LC3083\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">stream</span>.<span class=\"pl-smi\">sent</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3084\" class=\"blob-num js-line-number\" data-line-number=\"3084\"></td>\n        <td id=\"LC3084\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">stream</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>newListener<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>(<span class=\"pl-c1\">event</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3085\" class=\"blob-num js-line-number\" data-line-number=\"3085\"></td>\n        <td id=\"LC3085\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">stream</span>.<span class=\"pl-smi\">sent</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">event</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>data<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3086\" class=\"blob-num js-line-number\" data-line-number=\"3086\"></td>\n        <td id=\"LC3086\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">stream</span>.<span class=\"pl-smi\">sent</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3087\" class=\"blob-num js-line-number\" data-line-number=\"3087\"></td>\n        <td id=\"LC3087\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-c1\">process</span>.<span class=\"pl-en\">nextTick</span>(<span class=\"pl-k\">function</span>() { <span class=\"pl-smi\">req</span>.<span class=\"pl-c1\">send</span>(); });</td>\n      </tr>\n      <tr>\n        <td id=\"L3088\" class=\"blob-num js-line-number\" data-line-number=\"3088\"></td>\n        <td id=\"LC3088\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3089\" class=\"blob-num js-line-number\" data-line-number=\"3089\"></td>\n        <td id=\"LC3089\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3090\" class=\"blob-num js-line-number\" data-line-number=\"3090\"></td>\n        <td id=\"LC3090\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3091\" class=\"blob-num js-line-number\" data-line-number=\"3091\"></td>\n        <td id=\"LC3091\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3092\" class=\"blob-num js-line-number\" data-line-number=\"3092\"></td>\n        <td id=\"LC3092\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpHeaders<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">streamHeaders</span>(<span class=\"pl-smi\">statusCode</span>, <span class=\"pl-smi\">headers</span>, <span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3093\" class=\"blob-num js-line-number\" data-line-number=\"3093\"></td>\n        <td id=\"LC3093\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (statusCode <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">300</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3094\" class=\"blob-num js-line-number\" data-line-number=\"3094\"></td>\n        <td id=\"LC3094\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">req</span>.<span class=\"pl-en\">removeListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Core</span>.<span class=\"pl-c1\">HTTP_DATA</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3095\" class=\"blob-num js-line-number\" data-line-number=\"3095\"></td>\n        <td id=\"LC3095\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">req</span>.<span class=\"pl-en\">removeListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Core</span>.<span class=\"pl-c1\">HTTP_ERROR</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3096\" class=\"blob-num js-line-number\" data-line-number=\"3096\"></td>\n        <td id=\"LC3096\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">req</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>httpError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">streamHttpError</span>(<span class=\"pl-smi\">error</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3097\" class=\"blob-num js-line-number\" data-line-number=\"3097\"></td>\n        <td id=\"LC3097\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> error;</td>\n      </tr>\n      <tr>\n        <td id=\"L3098\" class=\"blob-num js-line-number\" data-line-number=\"3098\"></td>\n        <td id=\"LC3098\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryable</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3099\" class=\"blob-num js-line-number\" data-line-number=\"3099\"></td>\n        <td id=\"LC3099\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L3100\" class=\"blob-num js-line-number\" data-line-number=\"3100\"></td>\n        <td id=\"LC3100\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3101\" class=\"blob-num js-line-number\" data-line-number=\"3101\"></td>\n        <td id=\"LC3101\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> httpStream <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-en\">createUnbufferedStream</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3102\" class=\"blob-num js-line-number\" data-line-number=\"3102\"></td>\n        <td id=\"LC3102\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">HttpClient</span>.<span class=\"pl-smi\">streamsApiVersion</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">2</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3103\" class=\"blob-num js-line-number\" data-line-number=\"3103\"></td>\n        <td id=\"LC3103\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">httpStream</span>.<span class=\"pl-en\">pipe</span>(stream);</td>\n      </tr>\n      <tr>\n        <td id=\"L3104\" class=\"blob-num js-line-number\" data-line-number=\"3104\"></td>\n        <td id=\"LC3104\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3105\" class=\"blob-num js-line-number\" data-line-number=\"3105\"></td>\n        <td id=\"LC3105\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">httpStream</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>data<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3106\" class=\"blob-num js-line-number\" data-line-number=\"3106\"></td>\n        <td id=\"LC3106\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">stream</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>data<span class=\"pl-pds\">&#39;</span></span>, arg);</td>\n      </tr>\n      <tr>\n        <td id=\"L3107\" class=\"blob-num js-line-number\" data-line-number=\"3107\"></td>\n        <td id=\"LC3107\" class=\"blob-code blob-code-inner js-file-line\">          });</td>\n      </tr>\n      <tr>\n        <td id=\"L3108\" class=\"blob-num js-line-number\" data-line-number=\"3108\"></td>\n        <td id=\"LC3108\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">httpStream</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>end<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3109\" class=\"blob-num js-line-number\" data-line-number=\"3109\"></td>\n        <td id=\"LC3109\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">stream</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>end<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3110\" class=\"blob-num js-line-number\" data-line-number=\"3110\"></td>\n        <td id=\"LC3110\" class=\"blob-code blob-code-inner js-file-line\">          });</td>\n      </tr>\n      <tr>\n        <td id=\"L3111\" class=\"blob-num js-line-number\" data-line-number=\"3111\"></td>\n        <td id=\"LC3111\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3112\" class=\"blob-num js-line-number\" data-line-number=\"3112\"></td>\n        <td id=\"LC3112\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3113\" class=\"blob-num js-line-number\" data-line-number=\"3113\"></td>\n        <td id=\"LC3113\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">httpStream</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3114\" class=\"blob-num js-line-number\" data-line-number=\"3114\"></td>\n        <td id=\"LC3114\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">stream</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>, err);</td>\n      </tr>\n      <tr>\n        <td id=\"L3115\" class=\"blob-num js-line-number\" data-line-number=\"3115\"></td>\n        <td id=\"LC3115\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L3116\" class=\"blob-num js-line-number\" data-line-number=\"3116\"></td>\n        <td id=\"LC3116\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3117\" class=\"blob-num js-line-number\" data-line-number=\"3117\"></td>\n        <td id=\"LC3117\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L3118\" class=\"blob-num js-line-number\" data-line-number=\"3118\"></td>\n        <td id=\"LC3118\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3119\" class=\"blob-num js-line-number\" data-line-number=\"3119\"></td>\n        <td id=\"LC3119\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3120\" class=\"blob-num js-line-number\" data-line-number=\"3120\"></td>\n        <td id=\"LC3120\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">stream</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>, err);</td>\n      </tr>\n      <tr>\n        <td id=\"L3121\" class=\"blob-num js-line-number\" data-line-number=\"3121\"></td>\n        <td id=\"LC3121\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L3122\" class=\"blob-num js-line-number\" data-line-number=\"3122\"></td>\n        <td id=\"LC3122\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3123\" class=\"blob-num js-line-number\" data-line-number=\"3123\"></td>\n        <td id=\"LC3123\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> stream;</td>\n      </tr>\n      <tr>\n        <td id=\"L3124\" class=\"blob-num js-line-number\" data-line-number=\"3124\"></td>\n        <td id=\"LC3124\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3125\" class=\"blob-num js-line-number\" data-line-number=\"3125\"></td>\n        <td id=\"LC3125\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3126\" class=\"blob-num js-line-number\" data-line-number=\"3126\"></td>\n        <td id=\"LC3126\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3127\" class=\"blob-num js-line-number\" data-line-number=\"3127\"></td>\n        <td id=\"LC3127\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">emitEvent</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">emit</span>(<span class=\"pl-smi\">eventName</span>, <span class=\"pl-smi\">args</span>, <span class=\"pl-smi\">done</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3128\" class=\"blob-num js-line-number\" data-line-number=\"3128\"></td>\n        <td id=\"LC3128\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> args <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) { done <span class=\"pl-k\">=</span> args; args <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>; }</td>\n      </tr>\n      <tr>\n        <td id=\"L3129\" class=\"blob-num js-line-number\" data-line-number=\"3129\"></td>\n        <td id=\"LC3129\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>done) <span class=\"pl-en\">done</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() { };</td>\n      </tr>\n      <tr>\n        <td id=\"L3130\" class=\"blob-num js-line-number\" data-line-number=\"3130\"></td>\n        <td id=\"LC3130\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>args) args <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">eventParameters</span>(eventName, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3131\" class=\"blob-num js-line-number\" data-line-number=\"3131\"></td>\n        <td id=\"LC3131\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3132\" class=\"blob-num js-line-number\" data-line-number=\"3132\"></td>\n        <td id=\"LC3132\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> origEmit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">SequentialExecutor</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">emit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3133\" class=\"blob-num js-line-number\" data-line-number=\"3133\"></td>\n        <td id=\"LC3133\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">origEmit</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, eventName, args, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3134\" class=\"blob-num js-line-number\" data-line-number=\"3134\"></td>\n        <td id=\"LC3134\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (err) <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> err;</td>\n      </tr>\n      <tr>\n        <td id=\"L3135\" class=\"blob-num js-line-number\" data-line-number=\"3135\"></td>\n        <td id=\"LC3135\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">done</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, err);</td>\n      </tr>\n      <tr>\n        <td id=\"L3136\" class=\"blob-num js-line-number\" data-line-number=\"3136\"></td>\n        <td id=\"LC3136\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L3137\" class=\"blob-num js-line-number\" data-line-number=\"3137\"></td>\n        <td id=\"LC3137\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3138\" class=\"blob-num js-line-number\" data-line-number=\"3138\"></td>\n        <td id=\"LC3138\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3139\" class=\"blob-num js-line-number\" data-line-number=\"3139\"></td>\n        <td id=\"LC3139\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3140\" class=\"blob-num js-line-number\" data-line-number=\"3140\"></td>\n        <td id=\"LC3140\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">eventParameters</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">eventParameters</span>(<span class=\"pl-smi\">eventName</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3141\" class=\"blob-num js-line-number\" data-line-number=\"3141\"></td>\n        <td id=\"LC3141\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">switch</span> (eventName) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3142\" class=\"blob-num js-line-number\" data-line-number=\"3142\"></td>\n        <td id=\"LC3142\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>restart<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3143\" class=\"blob-num js-line-number\" data-line-number=\"3143\"></td>\n        <td id=\"LC3143\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validate<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3144\" class=\"blob-num js-line-number\" data-line-number=\"3144\"></td>\n        <td id=\"LC3144\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sign<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3145\" class=\"blob-num js-line-number\" data-line-number=\"3145\"></td>\n        <td id=\"LC3145\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3146\" class=\"blob-num js-line-number\" data-line-number=\"3146\"></td>\n        <td id=\"LC3146\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterValidate<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3147\" class=\"blob-num js-line-number\" data-line-number=\"3147\"></td>\n        <td id=\"LC3147\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterBuild<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3148\" class=\"blob-num js-line-number\" data-line-number=\"3148\"></td>\n        <td id=\"LC3148\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> [<span class=\"pl-v\">this</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L3149\" class=\"blob-num js-line-number\" data-line-number=\"3149\"></td>\n        <td id=\"LC3149\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3150\" class=\"blob-num js-line-number\" data-line-number=\"3150\"></td>\n        <td id=\"LC3150\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> [<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L3151\" class=\"blob-num js-line-number\" data-line-number=\"3151\"></td>\n        <td id=\"LC3151\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3152\" class=\"blob-num js-line-number\" data-line-number=\"3152\"></td>\n        <td id=\"LC3152\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> [<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L3153\" class=\"blob-num js-line-number\" data-line-number=\"3153\"></td>\n        <td id=\"LC3153\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3154\" class=\"blob-num js-line-number\" data-line-number=\"3154\"></td>\n        <td id=\"LC3154\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3155\" class=\"blob-num js-line-number\" data-line-number=\"3155\"></td>\n        <td id=\"LC3155\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3156\" class=\"blob-num js-line-number\" data-line-number=\"3156\"></td>\n        <td id=\"LC3156\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3157\" class=\"blob-num js-line-number\" data-line-number=\"3157\"></td>\n        <td id=\"LC3157\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">presign</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">presign</span>(<span class=\"pl-smi\">expires</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3158\" class=\"blob-num js-line-number\" data-line-number=\"3158\"></td>\n        <td id=\"LC3158\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>callback <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> expires <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3159\" class=\"blob-num js-line-number\" data-line-number=\"3159\"></td>\n        <td id=\"LC3159\" class=\"blob-code blob-code-inner js-file-line\">      callback <span class=\"pl-k\">=</span> expires;</td>\n      </tr>\n      <tr>\n        <td id=\"L3160\" class=\"blob-num js-line-number\" data-line-number=\"3160\"></td>\n        <td id=\"LC3160\" class=\"blob-code blob-code-inner js-file-line\">      expires <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3161\" class=\"blob-num js-line-number\" data-line-number=\"3161\"></td>\n        <td id=\"LC3161\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3162\" class=\"blob-num js-line-number\" data-line-number=\"3162\"></td>\n        <td id=\"LC3162\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.Signers</span>.<span class=\"pl-en\">Presign</span>().<span class=\"pl-en\">sign</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">toGet</span>(), expires, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L3163\" class=\"blob-num js-line-number\" data-line-number=\"3163\"></td>\n        <td id=\"LC3163\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3164\" class=\"blob-num js-line-number\" data-line-number=\"3164\"></td>\n        <td id=\"LC3164\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3165\" class=\"blob-num js-line-number\" data-line-number=\"3165\"></td>\n        <td id=\"LC3165\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3166\" class=\"blob-num js-line-number\" data-line-number=\"3166\"></td>\n        <td id=\"LC3166\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">toUnauthenticated</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">toUnauthenticated</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3167\" class=\"blob-num js-line-number\" data-line-number=\"3167\"></td>\n        <td id=\"LC3167\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">removeListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validate<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Core</span>.<span class=\"pl-c1\">VALIDATE_CREDENTIALS</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3168\" class=\"blob-num js-line-number\" data-line-number=\"3168\"></td>\n        <td id=\"LC3168\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">removeListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sign<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Core</span>.<span class=\"pl-c1\">SIGN</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3169\" class=\"blob-num js-line-number\" data-line-number=\"3169\"></td>\n        <td id=\"LC3169\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3170\" class=\"blob-num js-line-number\" data-line-number=\"3170\"></td>\n        <td id=\"LC3170\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3171\" class=\"blob-num js-line-number\" data-line-number=\"3171\"></td>\n        <td id=\"LC3171\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3172\" class=\"blob-num js-line-number\" data-line-number=\"3172\"></td>\n        <td id=\"LC3172\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3173\" class=\"blob-num js-line-number\" data-line-number=\"3173\"></td>\n        <td id=\"LC3173\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">toGet</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">toGet</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3174\" class=\"blob-num js-line-number\" data-line-number=\"3174\"></td>\n        <td id=\"LC3174\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>query<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3175\" class=\"blob-num js-line-number\" data-line-number=\"3175\"></td>\n        <td id=\"LC3175\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ec2<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3176\" class=\"blob-num js-line-number\" data-line-number=\"3176\"></td>\n        <td id=\"LC3176\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">removeListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">buildAsGet</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3177\" class=\"blob-num js-line-number\" data-line-number=\"3177\"></td>\n        <td id=\"LC3177\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">buildAsGet</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3178\" class=\"blob-num js-line-number\" data-line-number=\"3178\"></td>\n        <td id=\"LC3178\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3179\" class=\"blob-num js-line-number\" data-line-number=\"3179\"></td>\n        <td id=\"LC3179\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3180\" class=\"blob-num js-line-number\" data-line-number=\"3180\"></td>\n        <td id=\"LC3180\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3181\" class=\"blob-num js-line-number\" data-line-number=\"3181\"></td>\n        <td id=\"LC3181\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3182\" class=\"blob-num js-line-number\" data-line-number=\"3182\"></td>\n        <td id=\"LC3182\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3183\" class=\"blob-num js-line-number\" data-line-number=\"3183\"></td>\n        <td id=\"LC3183\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">buildAsGet</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">buildAsGet</span>(<span class=\"pl-smi\">request</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3184\" class=\"blob-num js-line-number\" data-line-number=\"3184\"></td>\n        <td id=\"LC3184\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">method</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>GET<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3185\" class=\"blob-num js-line-number\" data-line-number=\"3185\"></td>\n        <td id=\"LC3185\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">endpoint</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3186\" class=\"blob-num js-line-number\" data-line-number=\"3186\"></td>\n        <td id=\"LC3186\" class=\"blob-code blob-code-inner js-file-line\">                               <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3187\" class=\"blob-num js-line-number\" data-line-number=\"3187\"></td>\n        <td id=\"LC3187\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3188\" class=\"blob-num js-line-number\" data-line-number=\"3188\"></td>\n        <td id=\"LC3188\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3189\" class=\"blob-num js-line-number\" data-line-number=\"3189\"></td>\n        <td id=\"LC3189\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Length<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L3190\" class=\"blob-num js-line-number\" data-line-number=\"3190\"></td>\n        <td id=\"LC3190\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Type<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L3191\" class=\"blob-num js-line-number\" data-line-number=\"3191\"></td>\n        <td id=\"LC3191\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3192\" class=\"blob-num js-line-number\" data-line-number=\"3192\"></td>\n        <td id=\"LC3192\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3193\" class=\"blob-num js-line-number\" data-line-number=\"3193\"></td>\n        <td id=\"LC3193\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3194\" class=\"blob-num js-line-number\" data-line-number=\"3194\"></td>\n        <td id=\"LC3194\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">haltHandlersOnError</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">haltHandlersOnError</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3195\" class=\"blob-num js-line-number\" data-line-number=\"3195\"></td>\n        <td id=\"LC3195\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_haltHandlersOnError</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3196\" class=\"blob-num js-line-number\" data-line-number=\"3196\"></td>\n        <td id=\"LC3196\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L3197\" class=\"blob-num js-line-number\" data-line-number=\"3197\"></td>\n        <td id=\"LC3197\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L3198\" class=\"blob-num js-line-number\" data-line-number=\"3198\"></td>\n        <td id=\"LC3198\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3199\" class=\"blob-num js-line-number\" data-line-number=\"3199\"></td>\n        <td id=\"LC3199\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">mixin</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Request</span>, <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">SequentialExecutor</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3200\" class=\"blob-num js-line-number\" data-line-number=\"3200\"></td>\n        <td id=\"LC3200\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3201\" class=\"blob-num js-line-number\" data-line-number=\"3201\"></td>\n        <td id=\"LC3201\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>,<span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>FWaASH<span class=\"pl-pds\">&quot;</span></span>))</td>\n      </tr>\n      <tr>\n        <td id=\"L3202\" class=\"blob-num js-line-number\" data-line-number=\"3202\"></td>\n        <td id=\"LC3202\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./state_machine<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">43</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>FWaASH<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">58</span>}],<span class=\"pl-c1\">31</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L3203\" class=\"blob-num js-line-number\" data-line-number=\"3203\"></td>\n        <td id=\"LC3203\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3204\" class=\"blob-num js-line-number\" data-line-number=\"3204\"></td>\n        <td id=\"LC3204\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3205\" class=\"blob-num js-line-number\" data-line-number=\"3205\"></td>\n        <td id=\"LC3205\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3206\" class=\"blob-num js-line-number\" data-line-number=\"3206\"></td>\n        <td id=\"LC3206\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3207\" class=\"blob-num js-line-number\" data-line-number=\"3207\"></td>\n        <td id=\"LC3207\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3208\" class=\"blob-num js-line-number\" data-line-number=\"3208\"></td>\n        <td id=\"LC3208\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3209\" class=\"blob-num js-line-number\" data-line-number=\"3209\"></td>\n        <td id=\"LC3209\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">ResourceWaiter</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L3210\" class=\"blob-num js-line-number\" data-line-number=\"3210\"></td>\n        <td id=\"LC3210\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3211\" class=\"blob-num js-line-number\" data-line-number=\"3211\"></td>\n        <td id=\"LC3211\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">constructor</span>(<span class=\"pl-smi\">service</span>, <span class=\"pl-smi\">state</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3212\" class=\"blob-num js-line-number\" data-line-number=\"3212\"></td>\n        <td id=\"LC3212\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span> <span class=\"pl-k\">=</span> service;</td>\n      </tr>\n      <tr>\n        <td id=\"L3213\" class=\"blob-num js-line-number\" data-line-number=\"3213\"></td>\n        <td id=\"LC3213\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">state</span> <span class=\"pl-k\">=</span> state;</td>\n      </tr>\n      <tr>\n        <td id=\"L3214\" class=\"blob-num js-line-number\" data-line-number=\"3214\"></td>\n        <td id=\"LC3214\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3215\" class=\"blob-num js-line-number\" data-line-number=\"3215\"></td>\n        <td id=\"LC3215\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">state</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3216\" class=\"blob-num js-line-number\" data-line-number=\"3216\"></td>\n        <td id=\"LC3216\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">each</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">state</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3217\" class=\"blob-num js-line-number\" data-line-number=\"3217\"></td>\n        <td id=\"LC3217\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">state</span> <span class=\"pl-k\">=</span> key;</td>\n      </tr>\n      <tr>\n        <td id=\"L3218\" class=\"blob-num js-line-number\" data-line-number=\"3218\"></td>\n        <td id=\"LC3218\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expectedValue</span> <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L3219\" class=\"blob-num js-line-number\" data-line-number=\"3219\"></td>\n        <td id=\"LC3219\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3220\" class=\"blob-num js-line-number\" data-line-number=\"3220\"></td>\n        <td id=\"LC3220\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3221\" class=\"blob-num js-line-number\" data-line-number=\"3221\"></td>\n        <td id=\"LC3221\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3222\" class=\"blob-num js-line-number\" data-line-number=\"3222\"></td>\n        <td id=\"LC3222\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">loadWaiterConfig</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">state</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3223\" class=\"blob-num js-line-number\" data-line-number=\"3223\"></td>\n        <td id=\"LC3223\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expectedValue</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3224\" class=\"blob-num js-line-number\" data-line-number=\"3224\"></td>\n        <td id=\"LC3224\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expectedValue</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">successValue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3225\" class=\"blob-num js-line-number\" data-line-number=\"3225\"></td>\n        <td id=\"LC3225\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3226\" class=\"blob-num js-line-number\" data-line-number=\"3226\"></td>\n        <td id=\"LC3226\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3227\" class=\"blob-num js-line-number\" data-line-number=\"3227\"></td>\n        <td id=\"LC3227\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3228\" class=\"blob-num js-line-number\" data-line-number=\"3228\"></td>\n        <td id=\"LC3228\" class=\"blob-code blob-code-inner js-file-line\">  service<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L3229\" class=\"blob-num js-line-number\" data-line-number=\"3229\"></td>\n        <td id=\"LC3229\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3230\" class=\"blob-num js-line-number\" data-line-number=\"3230\"></td>\n        <td id=\"LC3230\" class=\"blob-code blob-code-inner js-file-line\">  state<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L3231\" class=\"blob-num js-line-number\" data-line-number=\"3231\"></td>\n        <td id=\"LC3231\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3232\" class=\"blob-num js-line-number\" data-line-number=\"3232\"></td>\n        <td id=\"LC3232\" class=\"blob-code blob-code-inner js-file-line\">  expectedValue<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L3233\" class=\"blob-num js-line-number\" data-line-number=\"3233\"></td>\n        <td id=\"LC3233\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3234\" class=\"blob-num js-line-number\" data-line-number=\"3234\"></td>\n        <td id=\"LC3234\" class=\"blob-code blob-code-inner js-file-line\">  config<span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L3235\" class=\"blob-num js-line-number\" data-line-number=\"3235\"></td>\n        <td id=\"LC3235\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3236\" class=\"blob-num js-line-number\" data-line-number=\"3236\"></td>\n        <td id=\"LC3236\" class=\"blob-code blob-code-inner js-file-line\">  waitDone<span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L3237\" class=\"blob-num js-line-number\" data-line-number=\"3237\"></td>\n        <td id=\"LC3237\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3238\" class=\"blob-num js-line-number\" data-line-number=\"3238\"></td>\n        <td id=\"LC3238\" class=\"blob-code blob-code-inner js-file-line\">  Listeners<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3239\" class=\"blob-num js-line-number\" data-line-number=\"3239\"></td>\n        <td id=\"LC3239\" class=\"blob-code blob-code-inner js-file-line\">    retry<span class=\"pl-k\">:</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.SequentialExecutor</span>().<span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">add</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3240\" class=\"blob-num js-line-number\" data-line-number=\"3240\"></td>\n        <td id=\"LC3240\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RETRY_CHECK<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>retry<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3241\" class=\"blob-num js-line-number\" data-line-number=\"3241\"></td>\n        <td id=\"LC3241\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> waiter <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">_waiter</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3242\" class=\"blob-num js-line-number\" data-line-number=\"3242\"></td>\n        <td id=\"LC3242\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ResourceNotReady<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3243\" class=\"blob-num js-line-number\" data-line-number=\"3243\"></td>\n        <td id=\"LC3243\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">retryDelay</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">waiter</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">interval</span> <span class=\"pl-k\">*</span> <span class=\"pl-c1\">1000</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3244\" class=\"blob-num js-line-number\" data-line-number=\"3244\"></td>\n        <td id=\"LC3244\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3245\" class=\"blob-num js-line-number\" data-line-number=\"3245\"></td>\n        <td id=\"LC3245\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3246\" class=\"blob-num js-line-number\" data-line-number=\"3246\"></td>\n        <td id=\"LC3246\" class=\"blob-code blob-code-inner js-file-line\">    }),</td>\n      </tr>\n      <tr>\n        <td id=\"L3247\" class=\"blob-num js-line-number\" data-line-number=\"3247\"></td>\n        <td id=\"LC3247\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3248\" class=\"blob-num js-line-number\" data-line-number=\"3248\"></td>\n        <td id=\"LC3248\" class=\"blob-code blob-code-inner js-file-line\">    output<span class=\"pl-k\">:</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.SequentialExecutor</span>().<span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">add</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3249\" class=\"blob-num js-line-number\" data-line-number=\"3249\"></td>\n        <td id=\"LC3249\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>CHECK_OUT_ERROR<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">CHECK_OUT_ERROR</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3250\" class=\"blob-num js-line-number\" data-line-number=\"3250\"></td>\n        <td id=\"LC3250\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3251\" class=\"blob-num js-line-number\" data-line-number=\"3251\"></td>\n        <td id=\"LC3251\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">_waiter</span>.<span class=\"pl-en\">setError</span>(resp, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3252\" class=\"blob-num js-line-number\" data-line-number=\"3252\"></td>\n        <td id=\"LC3252\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3253\" class=\"blob-num js-line-number\" data-line-number=\"3253\"></td>\n        <td id=\"LC3253\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3254\" class=\"blob-num js-line-number\" data-line-number=\"3254\"></td>\n        <td id=\"LC3254\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3255\" class=\"blob-num js-line-number\" data-line-number=\"3255\"></td>\n        <td id=\"LC3255\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>CHECK_OUTPUT<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">CHECK_OUTPUT</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3256\" class=\"blob-num js-line-number\" data-line-number=\"3256\"></td>\n        <td id=\"LC3256\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> waiter <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">_waiter</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3257\" class=\"blob-num js-line-number\" data-line-number=\"3257\"></td>\n        <td id=\"LC3257\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> success <span class=\"pl-k\">=</span> <span class=\"pl-smi\">waiter</span>.<span class=\"pl-en\">checkSuccess</span>(resp);</td>\n      </tr>\n      <tr>\n        <td id=\"L3258\" class=\"blob-num js-line-number\" data-line-number=\"3258\"></td>\n        <td id=\"LC3258\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>success) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3259\" class=\"blob-num js-line-number\" data-line-number=\"3259\"></td>\n        <td id=\"LC3259\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">waiter</span>.<span class=\"pl-en\">setError</span>(resp, success <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">false</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3260\" class=\"blob-num js-line-number\" data-line-number=\"3260\"></td>\n        <td id=\"LC3260\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3261\" class=\"blob-num js-line-number\" data-line-number=\"3261\"></td>\n        <td id=\"LC3261\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3262\" class=\"blob-num js-line-number\" data-line-number=\"3262\"></td>\n        <td id=\"LC3262\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3263\" class=\"blob-num js-line-number\" data-line-number=\"3263\"></td>\n        <td id=\"LC3263\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3264\" class=\"blob-num js-line-number\" data-line-number=\"3264\"></td>\n        <td id=\"LC3264\" class=\"blob-code blob-code-inner js-file-line\">    }),</td>\n      </tr>\n      <tr>\n        <td id=\"L3265\" class=\"blob-num js-line-number\" data-line-number=\"3265\"></td>\n        <td id=\"LC3265\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3266\" class=\"blob-num js-line-number\" data-line-number=\"3266\"></td>\n        <td id=\"LC3266\" class=\"blob-code blob-code-inner js-file-line\">    error<span class=\"pl-k\">:</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.SequentialExecutor</span>().<span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">add</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3267\" class=\"blob-num js-line-number\" data-line-number=\"3267\"></td>\n        <td id=\"LC3267\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>CHECK_ERROR<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractError<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">CHECK_ERROR</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3268\" class=\"blob-num js-line-number\" data-line-number=\"3268\"></td>\n        <td id=\"LC3268\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> waiter <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">_waiter</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3269\" class=\"blob-num js-line-number\" data-line-number=\"3269\"></td>\n        <td id=\"LC3269\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> success <span class=\"pl-k\">=</span> <span class=\"pl-smi\">waiter</span>.<span class=\"pl-en\">checkError</span>(resp);</td>\n      </tr>\n      <tr>\n        <td id=\"L3270\" class=\"blob-num js-line-number\" data-line-number=\"3270\"></td>\n        <td id=\"LC3270\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>success) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3271\" class=\"blob-num js-line-number\" data-line-number=\"3271\"></td>\n        <td id=\"LC3271\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">waiter</span>.<span class=\"pl-en\">setError</span>(resp, success <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">false</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3272\" class=\"blob-num js-line-number\" data-line-number=\"3272\"></td>\n        <td id=\"LC3272\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3273\" class=\"blob-num js-line-number\" data-line-number=\"3273\"></td>\n        <td id=\"LC3273\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3274\" class=\"blob-num js-line-number\" data-line-number=\"3274\"></td>\n        <td id=\"LC3274\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L3275\" class=\"blob-num js-line-number\" data-line-number=\"3275\"></td>\n        <td id=\"LC3275\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-en\">removeAllListeners</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3276\" class=\"blob-num js-line-number\" data-line-number=\"3276\"></td>\n        <td id=\"LC3276\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3277\" class=\"blob-num js-line-number\" data-line-number=\"3277\"></td>\n        <td id=\"LC3277\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3278\" class=\"blob-num js-line-number\" data-line-number=\"3278\"></td>\n        <td id=\"LC3278\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3279\" class=\"blob-num js-line-number\" data-line-number=\"3279\"></td>\n        <td id=\"LC3279\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">add</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>CHECK_ERR_OUTPUT<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>extractData<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">CHECK_ERR_OUTPUT</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3280\" class=\"blob-num js-line-number\" data-line-number=\"3280\"></td>\n        <td id=\"LC3280\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">_waiter</span>.<span class=\"pl-en\">setError</span>(resp, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3281\" class=\"blob-num js-line-number\" data-line-number=\"3281\"></td>\n        <td id=\"LC3281\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3282\" class=\"blob-num js-line-number\" data-line-number=\"3282\"></td>\n        <td id=\"LC3282\" class=\"blob-code blob-code-inner js-file-line\">    })</td>\n      </tr>\n      <tr>\n        <td id=\"L3283\" class=\"blob-num js-line-number\" data-line-number=\"3283\"></td>\n        <td id=\"LC3283\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3284\" class=\"blob-num js-line-number\" data-line-number=\"3284\"></td>\n        <td id=\"LC3284\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3285\" class=\"blob-num js-line-number\" data-line-number=\"3285\"></td>\n        <td id=\"LC3285\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3286\" class=\"blob-num js-line-number\" data-line-number=\"3286\"></td>\n        <td id=\"LC3286\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">wait</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">wait</span>(<span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3287\" class=\"blob-num js-line-number\" data-line-number=\"3287\"></td>\n        <td id=\"LC3287\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> params <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3288\" class=\"blob-num js-line-number\" data-line-number=\"3288\"></td>\n        <td id=\"LC3288\" class=\"blob-code blob-code-inner js-file-line\">      callback <span class=\"pl-k\">=</span> params; params <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3289\" class=\"blob-num js-line-number\" data-line-number=\"3289\"></td>\n        <td id=\"LC3289\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3290\" class=\"blob-num js-line-number\" data-line-number=\"3290\"></td>\n        <td id=\"LC3290\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3291\" class=\"blob-num js-line-number\" data-line-number=\"3291\"></td>\n        <td id=\"LC3291\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> request <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">makeRequest</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">operation</span>, params);</td>\n      </tr>\n      <tr>\n        <td id=\"L3292\" class=\"blob-num js-line-number\" data-line-number=\"3292\"></td>\n        <td id=\"LC3292\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> listeners <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">Listeners</span>[<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">successType</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L3293\" class=\"blob-num js-line-number\" data-line-number=\"3293\"></td>\n        <td id=\"LC3293\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">_waiter</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3294\" class=\"blob-num js-line-number\" data-line-number=\"3294\"></td>\n        <td id=\"LC3294\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">maxRetries</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">maxAttempts</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3295\" class=\"blob-num js-line-number\" data-line-number=\"3295\"></td>\n        <td id=\"LC3295\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">addListeners</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">Listeners</span>.<span class=\"pl-smi\">retry</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3296\" class=\"blob-num js-line-number\" data-line-number=\"3296\"></td>\n        <td id=\"LC3296\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (listeners) <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">addListeners</span>(listeners);</td>\n      </tr>\n      <tr>\n        <td id=\"L3297\" class=\"blob-num js-line-number\" data-line-number=\"3297\"></td>\n        <td id=\"LC3297\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3298\" class=\"blob-num js-line-number\" data-line-number=\"3298\"></td>\n        <td id=\"LC3298\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (callback) <span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">send</span>(callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L3299\" class=\"blob-num js-line-number\" data-line-number=\"3299\"></td>\n        <td id=\"LC3299\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> request;</td>\n      </tr>\n      <tr>\n        <td id=\"L3300\" class=\"blob-num js-line-number\" data-line-number=\"3300\"></td>\n        <td id=\"LC3300\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3301\" class=\"blob-num js-line-number\" data-line-number=\"3301\"></td>\n        <td id=\"LC3301\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3302\" class=\"blob-num js-line-number\" data-line-number=\"3302\"></td>\n        <td id=\"LC3302\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">setError</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">setError</span>(<span class=\"pl-smi\">resp</span>, <span class=\"pl-smi\">retryable</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3303\" class=\"blob-num js-line-number\" data-line-number=\"3303\"></td>\n        <td id=\"LC3303\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3304\" class=\"blob-num js-line-number\" data-line-number=\"3304\"></td>\n        <td id=\"LC3304\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), {</td>\n      </tr>\n      <tr>\n        <td id=\"L3305\" class=\"blob-num js-line-number\" data-line-number=\"3305\"></td>\n        <td id=\"LC3305\" class=\"blob-code blob-code-inner js-file-line\">      code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ResourceNotReady<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L3306\" class=\"blob-num js-line-number\" data-line-number=\"3306\"></td>\n        <td id=\"LC3306\" class=\"blob-code blob-code-inner js-file-line\">      message<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Resource is not in the state <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">state</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L3307\" class=\"blob-num js-line-number\" data-line-number=\"3307\"></td>\n        <td id=\"LC3307\" class=\"blob-code blob-code-inner js-file-line\">      retryable<span class=\"pl-k\">:</span> retryable</td>\n      </tr>\n      <tr>\n        <td id=\"L3308\" class=\"blob-num js-line-number\" data-line-number=\"3308\"></td>\n        <td id=\"LC3308\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L3309\" class=\"blob-num js-line-number\" data-line-number=\"3309\"></td>\n        <td id=\"LC3309\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3310\" class=\"blob-num js-line-number\" data-line-number=\"3310\"></td>\n        <td id=\"LC3310\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3311\" class=\"blob-num js-line-number\" data-line-number=\"3311\"></td>\n        <td id=\"LC3311\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3312\" class=\"blob-num js-line-number\" data-line-number=\"3312\"></td>\n        <td id=\"LC3312\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">checkSuccess</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">checkSuccess</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3313\" class=\"blob-num js-line-number\" data-line-number=\"3313\"></td>\n        <td id=\"LC3313\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">successPath</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3314\" class=\"blob-num js-line-number\" data-line-number=\"3314\"></td>\n        <td id=\"LC3314\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">statusCode</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">300</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3315\" class=\"blob-num js-line-number\" data-line-number=\"3315\"></td>\n        <td id=\"LC3315\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3316\" class=\"blob-num js-line-number\" data-line-number=\"3316\"></td>\n        <td id=\"LC3316\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3317\" class=\"blob-num js-line-number\" data-line-number=\"3317\"></td>\n        <td id=\"LC3317\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> r <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">jamespath</span>.<span class=\"pl-c1\">find</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">successPath</span>, <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3318\" class=\"blob-num js-line-number\" data-line-number=\"3318\"></td>\n        <td id=\"LC3318\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3319\" class=\"blob-num js-line-number\" data-line-number=\"3319\"></td>\n        <td id=\"LC3319\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">failureValue</span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3320\" class=\"blob-num js-line-number\" data-line-number=\"3320\"></td>\n        <td id=\"LC3320\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">failureValue</span>.<span class=\"pl-c1\">indexOf</span>(r) <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3321\" class=\"blob-num js-line-number\" data-line-number=\"3321\"></td>\n        <td id=\"LC3321\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>; <span class=\"pl-c\">// fast fail</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3322\" class=\"blob-num js-line-number\" data-line-number=\"3322\"></td>\n        <td id=\"LC3322\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3323\" class=\"blob-num js-line-number\" data-line-number=\"3323\"></td>\n        <td id=\"LC3323\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3324\" class=\"blob-num js-line-number\" data-line-number=\"3324\"></td>\n        <td id=\"LC3324\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expectedValue</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3325\" class=\"blob-num js-line-number\" data-line-number=\"3325\"></td>\n        <td id=\"LC3325\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r <span class=\"pl-k\">===</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">expectedValue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3326\" class=\"blob-num js-line-number\" data-line-number=\"3326\"></td>\n        <td id=\"LC3326\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3327\" class=\"blob-num js-line-number\" data-line-number=\"3327\"></td>\n        <td id=\"LC3327\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r <span class=\"pl-k\">?</span> <span class=\"pl-c1\">true</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3328\" class=\"blob-num js-line-number\" data-line-number=\"3328\"></td>\n        <td id=\"LC3328\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3329\" class=\"blob-num js-line-number\" data-line-number=\"3329\"></td>\n        <td id=\"LC3329\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3330\" class=\"blob-num js-line-number\" data-line-number=\"3330\"></td>\n        <td id=\"LC3330\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3331\" class=\"blob-num js-line-number\" data-line-number=\"3331\"></td>\n        <td id=\"LC3331\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3332\" class=\"blob-num js-line-number\" data-line-number=\"3332\"></td>\n        <td id=\"LC3332\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">checkError</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">checkError</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3333\" class=\"blob-num js-line-number\" data-line-number=\"3333\"></td>\n        <td id=\"LC3333\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">successValue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3334\" class=\"blob-num js-line-number\" data-line-number=\"3334\"></td>\n        <td id=\"LC3334\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3335\" class=\"blob-num js-line-number\" data-line-number=\"3335\"></td>\n        <td id=\"LC3335\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">statusCode</span> <span class=\"pl-k\">===</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L3336\" class=\"blob-num js-line-number\" data-line-number=\"3336\"></td>\n        <td id=\"LC3336\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3337\" class=\"blob-num js-line-number\" data-line-number=\"3337\"></td>\n        <td id=\"LC3337\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">===</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L3338\" class=\"blob-num js-line-number\" data-line-number=\"3338\"></td>\n        <td id=\"LC3338\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3339\" class=\"blob-num js-line-number\" data-line-number=\"3339\"></td>\n        <td id=\"LC3339\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3340\" class=\"blob-num js-line-number\" data-line-number=\"3340\"></td>\n        <td id=\"LC3340\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3341\" class=\"blob-num js-line-number\" data-line-number=\"3341\"></td>\n        <td id=\"LC3341\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3342\" class=\"blob-num js-line-number\" data-line-number=\"3342\"></td>\n        <td id=\"LC3342\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">loadWaiterConfig</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">loadWaiterConfig</span>(<span class=\"pl-smi\">state</span>, <span class=\"pl-smi\">noException</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3343\" class=\"blob-num js-line-number\" data-line-number=\"3343\"></td>\n        <td id=\"LC3343\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">waiters</span>[state]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3344\" class=\"blob-num js-line-number\" data-line-number=\"3344\"></td>\n        <td id=\"LC3344\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (noException) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3345\" class=\"blob-num js-line-number\" data-line-number=\"3345\"></td>\n        <td id=\"LC3345\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), {</td>\n      </tr>\n      <tr>\n        <td id=\"L3346\" class=\"blob-num js-line-number\" data-line-number=\"3346\"></td>\n        <td id=\"LC3346\" class=\"blob-code blob-code-inner js-file-line\">        code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>StateNotFoundError<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L3347\" class=\"blob-num js-line-number\" data-line-number=\"3347\"></td>\n        <td id=\"LC3347\" class=\"blob-code blob-code-inner js-file-line\">        message<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>State <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> state <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> not found.<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L3348\" class=\"blob-num js-line-number\" data-line-number=\"3348\"></td>\n        <td id=\"LC3348\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3349\" class=\"blob-num js-line-number\" data-line-number=\"3349\"></td>\n        <td id=\"LC3349\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3350\" class=\"blob-num js-line-number\" data-line-number=\"3350\"></td>\n        <td id=\"LC3350\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3351\" class=\"blob-num js-line-number\" data-line-number=\"3351\"></td>\n        <td id=\"LC3351\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">waiters</span>[state];</td>\n      </tr>\n      <tr>\n        <td id=\"L3352\" class=\"blob-num js-line-number\" data-line-number=\"3352\"></td>\n        <td id=\"LC3352\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> config <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3353\" class=\"blob-num js-line-number\" data-line-number=\"3353\"></td>\n        <td id=\"LC3353\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3354\" class=\"blob-num js-line-number\" data-line-number=\"3354\"></td>\n        <td id=\"LC3354\" class=\"blob-code blob-code-inner js-file-line\">    (<span class=\"pl-k\">function</span> () { <span class=\"pl-c\">// anonymous function to avoid max complexity count</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3355\" class=\"blob-num js-line-number\" data-line-number=\"3355\"></td>\n        <td id=\"LC3355\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">successType</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">successType</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">acceptorType</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3356\" class=\"blob-num js-line-number\" data-line-number=\"3356\"></td>\n        <td id=\"LC3356\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">successPath</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">successPath</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">acceptorPath</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3357\" class=\"blob-num js-line-number\" data-line-number=\"3357\"></td>\n        <td id=\"LC3357\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">successValue</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">successValue</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">acceptorValue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3358\" class=\"blob-num js-line-number\" data-line-number=\"3358\"></td>\n        <td id=\"LC3358\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">failureType</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">failureType</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">acceptorType</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3359\" class=\"blob-num js-line-number\" data-line-number=\"3359\"></td>\n        <td id=\"LC3359\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">failurePath</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">failurePath</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">acceptorPath</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3360\" class=\"blob-num js-line-number\" data-line-number=\"3360\"></td>\n        <td id=\"LC3360\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">failureValue</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">failureValue</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">acceptorValue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3361\" class=\"blob-num js-line-number\" data-line-number=\"3361\"></td>\n        <td id=\"LC3361\" class=\"blob-code blob-code-inner js-file-line\">    })();</td>\n      </tr>\n      <tr>\n        <td id=\"L3362\" class=\"blob-num js-line-number\" data-line-number=\"3362\"></td>\n        <td id=\"LC3362\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L3363\" class=\"blob-num js-line-number\" data-line-number=\"3363\"></td>\n        <td id=\"LC3363\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L3364\" class=\"blob-num js-line-number\" data-line-number=\"3364\"></td>\n        <td id=\"LC3364\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3365\" class=\"blob-num js-line-number\" data-line-number=\"3365\"></td>\n        <td id=\"LC3365\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">32</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L3366\" class=\"blob-num js-line-number\" data-line-number=\"3366\"></td>\n        <td id=\"LC3366\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3367\" class=\"blob-num js-line-number\" data-line-number=\"3367\"></td>\n        <td id=\"LC3367\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3368\" class=\"blob-num js-line-number\" data-line-number=\"3368\"></td>\n        <td id=\"LC3368\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3369\" class=\"blob-num js-line-number\" data-line-number=\"3369\"></td>\n        <td id=\"LC3369\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3370\" class=\"blob-num js-line-number\" data-line-number=\"3370\"></td>\n        <td id=\"LC3370\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Response</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L3371\" class=\"blob-num js-line-number\" data-line-number=\"3371\"></td>\n        <td id=\"LC3371\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3372\" class=\"blob-num js-line-number\" data-line-number=\"3372\"></td>\n        <td id=\"LC3372\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3373\" class=\"blob-num js-line-number\" data-line-number=\"3373\"></td>\n        <td id=\"LC3373\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">Response</span>(<span class=\"pl-smi\">request</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3374\" class=\"blob-num js-line-number\" data-line-number=\"3374\"></td>\n        <td id=\"LC3374\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span> <span class=\"pl-k\">=</span> request;</td>\n      </tr>\n      <tr>\n        <td id=\"L3375\" class=\"blob-num js-line-number\" data-line-number=\"3375\"></td>\n        <td id=\"LC3375\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3376\" class=\"blob-num js-line-number\" data-line-number=\"3376\"></td>\n        <td id=\"LC3376\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3377\" class=\"blob-num js-line-number\" data-line-number=\"3377\"></td>\n        <td id=\"LC3377\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">retryCount</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3378\" class=\"blob-num js-line-number\" data-line-number=\"3378\"></td>\n        <td id=\"LC3378\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">redirectCount</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3379\" class=\"blob-num js-line-number\" data-line-number=\"3379\"></td>\n        <td id=\"LC3379\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">httpResponse</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.HttpResponse</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3380\" class=\"blob-num js-line-number\" data-line-number=\"3380\"></td>\n        <td id=\"LC3380\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (request) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3381\" class=\"blob-num js-line-number\" data-line-number=\"3381\"></td>\n        <td id=\"LC3381\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">maxRetries</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">numRetries</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3382\" class=\"blob-num js-line-number\" data-line-number=\"3382\"></td>\n        <td id=\"LC3382\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">maxRedirects</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">maxRedirects</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3383\" class=\"blob-num js-line-number\" data-line-number=\"3383\"></td>\n        <td id=\"LC3383\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3384\" class=\"blob-num js-line-number\" data-line-number=\"3384\"></td>\n        <td id=\"LC3384\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3385\" class=\"blob-num js-line-number\" data-line-number=\"3385\"></td>\n        <td id=\"LC3385\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3386\" class=\"blob-num js-line-number\" data-line-number=\"3386\"></td>\n        <td id=\"LC3386\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3387\" class=\"blob-num js-line-number\" data-line-number=\"3387\"></td>\n        <td id=\"LC3387\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">nextPage</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">nextPage</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3388\" class=\"blob-num js-line-number\" data-line-number=\"3388\"></td>\n        <td id=\"LC3388\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> config;</td>\n      </tr>\n      <tr>\n        <td id=\"L3389\" class=\"blob-num js-line-number\" data-line-number=\"3389\"></td>\n        <td id=\"LC3389\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> service <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3390\" class=\"blob-num js-line-number\" data-line-number=\"3390\"></td>\n        <td id=\"LC3390\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> operation <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">operation</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3391\" class=\"blob-num js-line-number\" data-line-number=\"3391\"></td>\n        <td id=\"LC3391\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3392\" class=\"blob-num js-line-number\" data-line-number=\"3392\"></td>\n        <td id=\"LC3392\" class=\"blob-code blob-code-inner js-file-line\">      config <span class=\"pl-k\">=</span> <span class=\"pl-smi\">service</span>.<span class=\"pl-en\">paginationConfig</span>(operation, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3393\" class=\"blob-num js-line-number\" data-line-number=\"3393\"></td>\n        <td id=\"LC3393\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">catch</span> (e) { <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">=</span> e; }</td>\n      </tr>\n      <tr>\n        <td id=\"L3394\" class=\"blob-num js-line-number\" data-line-number=\"3394\"></td>\n        <td id=\"LC3394\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3395\" class=\"blob-num js-line-number\" data-line-number=\"3395\"></td>\n        <td id=\"LC3395\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-en\">hasNextPage</span>()) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3396\" class=\"blob-num js-line-number\" data-line-number=\"3396\"></td>\n        <td id=\"LC3396\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (callback) <span class=\"pl-en\">callback</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">error</span>, <span class=\"pl-c1\">null</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3397\" class=\"blob-num js-line-number\" data-line-number=\"3397\"></td>\n        <td id=\"LC3397\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">error</span>) <span class=\"pl-k\">throw</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">error</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3398\" class=\"blob-num js-line-number\" data-line-number=\"3398\"></td>\n        <td id=\"LC3398\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3399\" class=\"blob-num js-line-number\" data-line-number=\"3399\"></td>\n        <td id=\"LC3399\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3400\" class=\"blob-num js-line-number\" data-line-number=\"3400\"></td>\n        <td id=\"LC3400\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3401\" class=\"blob-num js-line-number\" data-line-number=\"3401\"></td>\n        <td id=\"LC3401\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> params <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">copy</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">params</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3402\" class=\"blob-num js-line-number\" data-line-number=\"3402\"></td>\n        <td id=\"LC3402\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3403\" class=\"blob-num js-line-number\" data-line-number=\"3403\"></td>\n        <td id=\"LC3403\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> callback <span class=\"pl-k\">?</span> <span class=\"pl-en\">callback</span>(<span class=\"pl-c1\">null</span>, <span class=\"pl-c1\">null</span>) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3404\" class=\"blob-num js-line-number\" data-line-number=\"3404\"></td>\n        <td id=\"LC3404\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3405\" class=\"blob-num js-line-number\" data-line-number=\"3405\"></td>\n        <td id=\"LC3405\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> inputTokens <span class=\"pl-k\">=</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">inputToken</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3406\" class=\"blob-num js-line-number\" data-line-number=\"3406\"></td>\n        <td id=\"LC3406\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> inputTokens <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) inputTokens <span class=\"pl-k\">=</span> [inputTokens];</td>\n      </tr>\n      <tr>\n        <td id=\"L3407\" class=\"blob-num js-line-number\" data-line-number=\"3407\"></td>\n        <td id=\"LC3407\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">inputTokens</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3408\" class=\"blob-num js-line-number\" data-line-number=\"3408\"></td>\n        <td id=\"LC3408\" class=\"blob-code blob-code-inner js-file-line\">        params[inputTokens[i]] <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span>[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L3409\" class=\"blob-num js-line-number\" data-line-number=\"3409\"></td>\n        <td id=\"LC3409\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3410\" class=\"blob-num js-line-number\" data-line-number=\"3410\"></td>\n        <td id=\"LC3410\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">service</span>.<span class=\"pl-en\">makeRequest</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">operation</span>, params, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L3411\" class=\"blob-num js-line-number\" data-line-number=\"3411\"></td>\n        <td id=\"LC3411\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3412\" class=\"blob-num js-line-number\" data-line-number=\"3412\"></td>\n        <td id=\"LC3412\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3413\" class=\"blob-num js-line-number\" data-line-number=\"3413\"></td>\n        <td id=\"LC3413\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3414\" class=\"blob-num js-line-number\" data-line-number=\"3414\"></td>\n        <td id=\"LC3414\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3415\" class=\"blob-num js-line-number\" data-line-number=\"3415\"></td>\n        <td id=\"LC3415\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">hasNextPage</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">hasNextPage</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3416\" class=\"blob-num js-line-number\" data-line-number=\"3416\"></td>\n        <td id=\"LC3416\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">cacheNextPageTokens</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3417\" class=\"blob-num js-line-number\" data-line-number=\"3417\"></td>\n        <td id=\"LC3417\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3418\" class=\"blob-num js-line-number\" data-line-number=\"3418\"></td>\n        <td id=\"LC3418\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3419\" class=\"blob-num js-line-number\" data-line-number=\"3419\"></td>\n        <td id=\"LC3419\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">else</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3420\" class=\"blob-num js-line-number\" data-line-number=\"3420\"></td>\n        <td id=\"LC3420\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3421\" class=\"blob-num js-line-number\" data-line-number=\"3421\"></td>\n        <td id=\"LC3421\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3422\" class=\"blob-num js-line-number\" data-line-number=\"3422\"></td>\n        <td id=\"LC3422\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3423\" class=\"blob-num js-line-number\" data-line-number=\"3423\"></td>\n        <td id=\"LC3423\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">cacheNextPageTokens</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">cacheNextPageTokens</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3424\" class=\"blob-num js-line-number\" data-line-number=\"3424\"></td>\n        <td id=\"LC3424\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">hasOwnProperty</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>nextPageTokens<span class=\"pl-pds\">&#39;</span></span>)) <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3425\" class=\"blob-num js-line-number\" data-line-number=\"3425\"></td>\n        <td id=\"LC3425\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3426\" class=\"blob-num js-line-number\" data-line-number=\"3426\"></td>\n        <td id=\"LC3426\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3427\" class=\"blob-num js-line-number\" data-line-number=\"3427\"></td>\n        <td id=\"LC3427\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> config <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">paginationConfig</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">operation</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3428\" class=\"blob-num js-line-number\" data-line-number=\"3428\"></td>\n        <td id=\"LC3428\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>config) <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3429\" class=\"blob-num js-line-number\" data-line-number=\"3429\"></td>\n        <td id=\"LC3429\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3430\" class=\"blob-num js-line-number\" data-line-number=\"3430\"></td>\n        <td id=\"LC3430\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3431\" class=\"blob-num js-line-number\" data-line-number=\"3431\"></td>\n        <td id=\"LC3431\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">moreResults</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3432\" class=\"blob-num js-line-number\" data-line-number=\"3432\"></td>\n        <td id=\"LC3432\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">jamespath</span>.<span class=\"pl-c1\">find</span>(<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">moreResults</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">data</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3433\" class=\"blob-num js-line-number\" data-line-number=\"3433\"></td>\n        <td id=\"LC3433\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3434\" class=\"blob-num js-line-number\" data-line-number=\"3434\"></td>\n        <td id=\"LC3434\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3435\" class=\"blob-num js-line-number\" data-line-number=\"3435\"></td>\n        <td id=\"LC3435\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3436\" class=\"blob-num js-line-number\" data-line-number=\"3436\"></td>\n        <td id=\"LC3436\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3437\" class=\"blob-num js-line-number\" data-line-number=\"3437\"></td>\n        <td id=\"LC3437\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> exprs <span class=\"pl-k\">=</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">outputToken</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3438\" class=\"blob-num js-line-number\" data-line-number=\"3438\"></td>\n        <td id=\"LC3438\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> exprs <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) exprs <span class=\"pl-k\">=</span> [exprs];</td>\n      </tr>\n      <tr>\n        <td id=\"L3439\" class=\"blob-num js-line-number\" data-line-number=\"3439\"></td>\n        <td id=\"LC3439\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">arrayEach</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, exprs, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">expr</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3440\" class=\"blob-num js-line-number\" data-line-number=\"3440\"></td>\n        <td id=\"LC3440\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> output <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">jamespath</span>.<span class=\"pl-c1\">find</span>(expr, <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">data</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3441\" class=\"blob-num js-line-number\" data-line-number=\"3441\"></td>\n        <td id=\"LC3441\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (output) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3442\" class=\"blob-num js-line-number\" data-line-number=\"3442\"></td>\n        <td id=\"LC3442\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span> <span class=\"pl-k\">||</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L3443\" class=\"blob-num js-line-number\" data-line-number=\"3443\"></td>\n        <td id=\"LC3443\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span>.<span class=\"pl-c1\">push</span>(output);</td>\n      </tr>\n      <tr>\n        <td id=\"L3444\" class=\"blob-num js-line-number\" data-line-number=\"3444\"></td>\n        <td id=\"LC3444\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3445\" class=\"blob-num js-line-number\" data-line-number=\"3445\"></td>\n        <td id=\"LC3445\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L3446\" class=\"blob-num js-line-number\" data-line-number=\"3446\"></td>\n        <td id=\"LC3446\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3447\" class=\"blob-num js-line-number\" data-line-number=\"3447\"></td>\n        <td id=\"LC3447\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nextPageTokens</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3448\" class=\"blob-num js-line-number\" data-line-number=\"3448\"></td>\n        <td id=\"LC3448\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L3449\" class=\"blob-num js-line-number\" data-line-number=\"3449\"></td>\n        <td id=\"LC3449\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3450\" class=\"blob-num js-line-number\" data-line-number=\"3450\"></td>\n        <td id=\"LC3450\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L3451\" class=\"blob-num js-line-number\" data-line-number=\"3451\"></td>\n        <td id=\"LC3451\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3452\" class=\"blob-num js-line-number\" data-line-number=\"3452\"></td>\n        <td id=\"LC3452\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">33</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L3453\" class=\"blob-num js-line-number\" data-line-number=\"3453\"></td>\n        <td id=\"LC3453\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3454\" class=\"blob-num js-line-number\" data-line-number=\"3454\"></td>\n        <td id=\"LC3454\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3455\" class=\"blob-num js-line-number\" data-line-number=\"3455\"></td>\n        <td id=\"LC3455\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3456\" class=\"blob-num js-line-number\" data-line-number=\"3456\"></td>\n        <td id=\"LC3456\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">SequentialExecutor</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L3457\" class=\"blob-num js-line-number\" data-line-number=\"3457\"></td>\n        <td id=\"LC3457\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3458\" class=\"blob-num js-line-number\" data-line-number=\"3458\"></td>\n        <td id=\"LC3458\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">SequentialExecutor</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3459\" class=\"blob-num js-line-number\" data-line-number=\"3459\"></td>\n        <td id=\"LC3459\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L3460\" class=\"blob-num js-line-number\" data-line-number=\"3460\"></td>\n        <td id=\"LC3460\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3461\" class=\"blob-num js-line-number\" data-line-number=\"3461\"></td>\n        <td id=\"LC3461\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3462\" class=\"blob-num js-line-number\" data-line-number=\"3462\"></td>\n        <td id=\"LC3462\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3463\" class=\"blob-num js-line-number\" data-line-number=\"3463\"></td>\n        <td id=\"LC3463\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">listeners</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">listeners</span>(<span class=\"pl-smi\">eventName</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3464\" class=\"blob-num js-line-number\" data-line-number=\"3464\"></td>\n        <td id=\"LC3464\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[eventName] <span class=\"pl-k\">?</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[eventName].<span class=\"pl-c1\">slice</span>(<span class=\"pl-c1\">0</span>) <span class=\"pl-k\">:</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L3465\" class=\"blob-num js-line-number\" data-line-number=\"3465\"></td>\n        <td id=\"LC3465\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3466\" class=\"blob-num js-line-number\" data-line-number=\"3466\"></td>\n        <td id=\"LC3466\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3467\" class=\"blob-num js-line-number\" data-line-number=\"3467\"></td>\n        <td id=\"LC3467\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">on</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">on</span>(<span class=\"pl-smi\">eventName</span>, <span class=\"pl-smi\">listener</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3468\" class=\"blob-num js-line-number\" data-line-number=\"3468\"></td>\n        <td id=\"LC3468\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[eventName]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3469\" class=\"blob-num js-line-number\" data-line-number=\"3469\"></td>\n        <td id=\"LC3469\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[eventName].<span class=\"pl-c1\">push</span>(listener);</td>\n      </tr>\n      <tr>\n        <td id=\"L3470\" class=\"blob-num js-line-number\" data-line-number=\"3470\"></td>\n        <td id=\"LC3470\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3471\" class=\"blob-num js-line-number\" data-line-number=\"3471\"></td>\n        <td id=\"LC3471\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[eventName] <span class=\"pl-k\">=</span> [listener];</td>\n      </tr>\n      <tr>\n        <td id=\"L3472\" class=\"blob-num js-line-number\" data-line-number=\"3472\"></td>\n        <td id=\"LC3472\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3473\" class=\"blob-num js-line-number\" data-line-number=\"3473\"></td>\n        <td id=\"LC3473\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3474\" class=\"blob-num js-line-number\" data-line-number=\"3474\"></td>\n        <td id=\"LC3474\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3475\" class=\"blob-num js-line-number\" data-line-number=\"3475\"></td>\n        <td id=\"LC3475\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3476\" class=\"blob-num js-line-number\" data-line-number=\"3476\"></td>\n        <td id=\"LC3476\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3477\" class=\"blob-num js-line-number\" data-line-number=\"3477\"></td>\n        <td id=\"LC3477\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">onAsync</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">onAsync</span>(<span class=\"pl-smi\">eventName</span>, <span class=\"pl-smi\">listener</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3478\" class=\"blob-num js-line-number\" data-line-number=\"3478\"></td>\n        <td id=\"LC3478\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">listener</span>.<span class=\"pl-smi\">_isAsync</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3479\" class=\"blob-num js-line-number\" data-line-number=\"3479\"></td>\n        <td id=\"LC3479\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">on</span>(eventName, listener);</td>\n      </tr>\n      <tr>\n        <td id=\"L3480\" class=\"blob-num js-line-number\" data-line-number=\"3480\"></td>\n        <td id=\"LC3480\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3481\" class=\"blob-num js-line-number\" data-line-number=\"3481\"></td>\n        <td id=\"LC3481\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3482\" class=\"blob-num js-line-number\" data-line-number=\"3482\"></td>\n        <td id=\"LC3482\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">removeListener</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">removeListener</span>(<span class=\"pl-smi\">eventName</span>, <span class=\"pl-smi\">listener</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3483\" class=\"blob-num js-line-number\" data-line-number=\"3483\"></td>\n        <td id=\"LC3483\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> listeners <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[eventName];</td>\n      </tr>\n      <tr>\n        <td id=\"L3484\" class=\"blob-num js-line-number\" data-line-number=\"3484\"></td>\n        <td id=\"LC3484\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (listeners) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3485\" class=\"blob-num js-line-number\" data-line-number=\"3485\"></td>\n        <td id=\"LC3485\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">listeners</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3486\" class=\"blob-num js-line-number\" data-line-number=\"3486\"></td>\n        <td id=\"LC3486\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> position <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3487\" class=\"blob-num js-line-number\" data-line-number=\"3487\"></td>\n        <td id=\"LC3487\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> length; <span class=\"pl-k\">++</span>i) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3488\" class=\"blob-num js-line-number\" data-line-number=\"3488\"></td>\n        <td id=\"LC3488\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (listeners[i] <span class=\"pl-k\">===</span> listener) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3489\" class=\"blob-num js-line-number\" data-line-number=\"3489\"></td>\n        <td id=\"LC3489\" class=\"blob-code blob-code-inner js-file-line\">          position <span class=\"pl-k\">=</span> i;</td>\n      </tr>\n      <tr>\n        <td id=\"L3490\" class=\"blob-num js-line-number\" data-line-number=\"3490\"></td>\n        <td id=\"LC3490\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3491\" class=\"blob-num js-line-number\" data-line-number=\"3491\"></td>\n        <td id=\"LC3491\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3492\" class=\"blob-num js-line-number\" data-line-number=\"3492\"></td>\n        <td id=\"LC3492\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (position <span class=\"pl-k\">&gt;</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3493\" class=\"blob-num js-line-number\" data-line-number=\"3493\"></td>\n        <td id=\"LC3493\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">listeners</span>.<span class=\"pl-c1\">splice</span>(position, <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3494\" class=\"blob-num js-line-number\" data-line-number=\"3494\"></td>\n        <td id=\"LC3494\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3495\" class=\"blob-num js-line-number\" data-line-number=\"3495\"></td>\n        <td id=\"LC3495\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3496\" class=\"blob-num js-line-number\" data-line-number=\"3496\"></td>\n        <td id=\"LC3496\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3497\" class=\"blob-num js-line-number\" data-line-number=\"3497\"></td>\n        <td id=\"LC3497\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3498\" class=\"blob-num js-line-number\" data-line-number=\"3498\"></td>\n        <td id=\"LC3498\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3499\" class=\"blob-num js-line-number\" data-line-number=\"3499\"></td>\n        <td id=\"LC3499\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">removeAllListeners</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">removeAllListeners</span>(<span class=\"pl-smi\">eventName</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3500\" class=\"blob-num js-line-number\" data-line-number=\"3500\"></td>\n        <td id=\"LC3500\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (eventName) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3501\" class=\"blob-num js-line-number\" data-line-number=\"3501\"></td>\n        <td id=\"LC3501\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">delete</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[eventName];</td>\n      </tr>\n      <tr>\n        <td id=\"L3502\" class=\"blob-num js-line-number\" data-line-number=\"3502\"></td>\n        <td id=\"LC3502\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3503\" class=\"blob-num js-line-number\" data-line-number=\"3503\"></td>\n        <td id=\"LC3503\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L3504\" class=\"blob-num js-line-number\" data-line-number=\"3504\"></td>\n        <td id=\"LC3504\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3505\" class=\"blob-num js-line-number\" data-line-number=\"3505\"></td>\n        <td id=\"LC3505\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3506\" class=\"blob-num js-line-number\" data-line-number=\"3506\"></td>\n        <td id=\"LC3506\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3507\" class=\"blob-num js-line-number\" data-line-number=\"3507\"></td>\n        <td id=\"LC3507\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3508\" class=\"blob-num js-line-number\" data-line-number=\"3508\"></td>\n        <td id=\"LC3508\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3509\" class=\"blob-num js-line-number\" data-line-number=\"3509\"></td>\n        <td id=\"LC3509\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">emit</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">emit</span>(<span class=\"pl-smi\">eventName</span>, <span class=\"pl-smi\">eventArgs</span>, <span class=\"pl-smi\">doneCallback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3510\" class=\"blob-num js-line-number\" data-line-number=\"3510\"></td>\n        <td id=\"LC3510\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>doneCallback) <span class=\"pl-en\">doneCallback</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() { };</td>\n      </tr>\n      <tr>\n        <td id=\"L3511\" class=\"blob-num js-line-number\" data-line-number=\"3511\"></td>\n        <td id=\"LC3511\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> listeners <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">listeners</span>(eventName);</td>\n      </tr>\n      <tr>\n        <td id=\"L3512\" class=\"blob-num js-line-number\" data-line-number=\"3512\"></td>\n        <td id=\"LC3512\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> count <span class=\"pl-k\">=</span> <span class=\"pl-smi\">listeners</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3513\" class=\"blob-num js-line-number\" data-line-number=\"3513\"></td>\n        <td id=\"LC3513\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">callListeners</span>(listeners, eventArgs, doneCallback);</td>\n      </tr>\n      <tr>\n        <td id=\"L3514\" class=\"blob-num js-line-number\" data-line-number=\"3514\"></td>\n        <td id=\"LC3514\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> count <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3515\" class=\"blob-num js-line-number\" data-line-number=\"3515\"></td>\n        <td id=\"LC3515\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3516\" class=\"blob-num js-line-number\" data-line-number=\"3516\"></td>\n        <td id=\"LC3516\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3517\" class=\"blob-num js-line-number\" data-line-number=\"3517\"></td>\n        <td id=\"LC3517\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3518\" class=\"blob-num js-line-number\" data-line-number=\"3518\"></td>\n        <td id=\"LC3518\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">callListeners</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">callListeners</span>(<span class=\"pl-smi\">listeners</span>, <span class=\"pl-smi\">args</span>, <span class=\"pl-smi\">doneCallback</span>, <span class=\"pl-smi\">prevError</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3519\" class=\"blob-num js-line-number\" data-line-number=\"3519\"></td>\n        <td id=\"LC3519\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3520\" class=\"blob-num js-line-number\" data-line-number=\"3520\"></td>\n        <td id=\"LC3520\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> error <span class=\"pl-k\">=</span> prevError <span class=\"pl-k\">||</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3521\" class=\"blob-num js-line-number\" data-line-number=\"3521\"></td>\n        <td id=\"LC3521\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3522\" class=\"blob-num js-line-number\" data-line-number=\"3522\"></td>\n        <td id=\"LC3522\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">callNextListener</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3523\" class=\"blob-num js-line-number\" data-line-number=\"3523\"></td>\n        <td id=\"LC3523\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3524\" class=\"blob-num js-line-number\" data-line-number=\"3524\"></td>\n        <td id=\"LC3524\" class=\"blob-code blob-code-inner js-file-line\">        error <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(error <span class=\"pl-k\">||</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), err);</td>\n      </tr>\n      <tr>\n        <td id=\"L3525\" class=\"blob-num js-line-number\" data-line-number=\"3525\"></td>\n        <td id=\"LC3525\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">_haltHandlersOnError</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3526\" class=\"blob-num js-line-number\" data-line-number=\"3526\"></td>\n        <td id=\"LC3526\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">return</span> <span class=\"pl-smi\">doneCallback</span>.<span class=\"pl-c1\">call</span>(self, error);</td>\n      </tr>\n      <tr>\n        <td id=\"L3527\" class=\"blob-num js-line-number\" data-line-number=\"3527\"></td>\n        <td id=\"LC3527\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3528\" class=\"blob-num js-line-number\" data-line-number=\"3528\"></td>\n        <td id=\"LC3528\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3529\" class=\"blob-num js-line-number\" data-line-number=\"3529\"></td>\n        <td id=\"LC3529\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">callListeners</span>(listeners, args, doneCallback, error);</td>\n      </tr>\n      <tr>\n        <td id=\"L3530\" class=\"blob-num js-line-number\" data-line-number=\"3530\"></td>\n        <td id=\"LC3530\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3531\" class=\"blob-num js-line-number\" data-line-number=\"3531\"></td>\n        <td id=\"LC3531\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3532\" class=\"blob-num js-line-number\" data-line-number=\"3532\"></td>\n        <td id=\"LC3532\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">while</span> (<span class=\"pl-smi\">listeners</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3533\" class=\"blob-num js-line-number\" data-line-number=\"3533\"></td>\n        <td id=\"LC3533\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> listener <span class=\"pl-k\">=</span> <span class=\"pl-smi\">listeners</span>.<span class=\"pl-c1\">shift</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3534\" class=\"blob-num js-line-number\" data-line-number=\"3534\"></td>\n        <td id=\"LC3534\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">listener</span>.<span class=\"pl-smi\">_isAsync</span>) { <span class=\"pl-c\">// asynchronous listener</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3535\" class=\"blob-num js-line-number\" data-line-number=\"3535\"></td>\n        <td id=\"LC3535\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">listener</span>.<span class=\"pl-c1\">apply</span>(self, <span class=\"pl-smi\">args</span>.<span class=\"pl-c1\">concat</span>([callNextListener]));</td>\n      </tr>\n      <tr>\n        <td id=\"L3536\" class=\"blob-num js-line-number\" data-line-number=\"3536\"></td>\n        <td id=\"LC3536\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span>; <span class=\"pl-c\">// stop here, callNextListener will continue</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3537\" class=\"blob-num js-line-number\" data-line-number=\"3537\"></td>\n        <td id=\"LC3537\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> { <span class=\"pl-c\">// synchronous listener</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3538\" class=\"blob-num js-line-number\" data-line-number=\"3538\"></td>\n        <td id=\"LC3538\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3539\" class=\"blob-num js-line-number\" data-line-number=\"3539\"></td>\n        <td id=\"LC3539\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">listener</span>.<span class=\"pl-c1\">apply</span>(self, args);</td>\n      </tr>\n      <tr>\n        <td id=\"L3540\" class=\"blob-num js-line-number\" data-line-number=\"3540\"></td>\n        <td id=\"LC3540\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">catch</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3541\" class=\"blob-num js-line-number\" data-line-number=\"3541\"></td>\n        <td id=\"LC3541\" class=\"blob-code blob-code-inner js-file-line\">          error <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(error <span class=\"pl-k\">||</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), err);</td>\n      </tr>\n      <tr>\n        <td id=\"L3542\" class=\"blob-num js-line-number\" data-line-number=\"3542\"></td>\n        <td id=\"LC3542\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3543\" class=\"blob-num js-line-number\" data-line-number=\"3543\"></td>\n        <td id=\"LC3543\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (error <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">_haltHandlersOnError</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3544\" class=\"blob-num js-line-number\" data-line-number=\"3544\"></td>\n        <td id=\"LC3544\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">doneCallback</span>.<span class=\"pl-c1\">call</span>(self, error);</td>\n      </tr>\n      <tr>\n        <td id=\"L3545\" class=\"blob-num js-line-number\" data-line-number=\"3545\"></td>\n        <td id=\"LC3545\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3546\" class=\"blob-num js-line-number\" data-line-number=\"3546\"></td>\n        <td id=\"LC3546\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3547\" class=\"blob-num js-line-number\" data-line-number=\"3547\"></td>\n        <td id=\"LC3547\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3548\" class=\"blob-num js-line-number\" data-line-number=\"3548\"></td>\n        <td id=\"LC3548\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3549\" class=\"blob-num js-line-number\" data-line-number=\"3549\"></td>\n        <td id=\"LC3549\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">doneCallback</span>.<span class=\"pl-c1\">call</span>(self, error);</td>\n      </tr>\n      <tr>\n        <td id=\"L3550\" class=\"blob-num js-line-number\" data-line-number=\"3550\"></td>\n        <td id=\"LC3550\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3551\" class=\"blob-num js-line-number\" data-line-number=\"3551\"></td>\n        <td id=\"LC3551\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3552\" class=\"blob-num js-line-number\" data-line-number=\"3552\"></td>\n        <td id=\"LC3552\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3553\" class=\"blob-num js-line-number\" data-line-number=\"3553\"></td>\n        <td id=\"LC3553\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">addListeners</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addListeners</span>(<span class=\"pl-smi\">listeners</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3554\" class=\"blob-num js-line-number\" data-line-number=\"3554\"></td>\n        <td id=\"LC3554\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3555\" class=\"blob-num js-line-number\" data-line-number=\"3555\"></td>\n        <td id=\"LC3555\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3556\" class=\"blob-num js-line-number\" data-line-number=\"3556\"></td>\n        <td id=\"LC3556\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">listeners</span>.<span class=\"pl-smi\">_events</span>) listeners <span class=\"pl-k\">=</span> <span class=\"pl-smi\">listeners</span>.<span class=\"pl-smi\">_events</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3557\" class=\"blob-num js-line-number\" data-line-number=\"3557\"></td>\n        <td id=\"LC3557\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3558\" class=\"blob-num js-line-number\" data-line-number=\"3558\"></td>\n        <td id=\"LC3558\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(listeners, <span class=\"pl-k\">function</span>(<span class=\"pl-c1\">event</span>, <span class=\"pl-smi\">callbacks</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3559\" class=\"blob-num js-line-number\" data-line-number=\"3559\"></td>\n        <td id=\"LC3559\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> callbacks <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) callbacks <span class=\"pl-k\">=</span> [callbacks];</td>\n      </tr>\n      <tr>\n        <td id=\"L3560\" class=\"blob-num js-line-number\" data-line-number=\"3560\"></td>\n        <td id=\"LC3560\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(callbacks, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3561\" class=\"blob-num js-line-number\" data-line-number=\"3561\"></td>\n        <td id=\"LC3561\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-c1\">event</span>, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L3562\" class=\"blob-num js-line-number\" data-line-number=\"3562\"></td>\n        <td id=\"LC3562\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L3563\" class=\"blob-num js-line-number\" data-line-number=\"3563\"></td>\n        <td id=\"LC3563\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L3564\" class=\"blob-num js-line-number\" data-line-number=\"3564\"></td>\n        <td id=\"LC3564\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3565\" class=\"blob-num js-line-number\" data-line-number=\"3565\"></td>\n        <td id=\"LC3565\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> self;</td>\n      </tr>\n      <tr>\n        <td id=\"L3566\" class=\"blob-num js-line-number\" data-line-number=\"3566\"></td>\n        <td id=\"LC3566\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3567\" class=\"blob-num js-line-number\" data-line-number=\"3567\"></td>\n        <td id=\"LC3567\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3568\" class=\"blob-num js-line-number\" data-line-number=\"3568\"></td>\n        <td id=\"LC3568\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3569\" class=\"blob-num js-line-number\" data-line-number=\"3569\"></td>\n        <td id=\"LC3569\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">addNamedListener</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addNamedListener</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">eventName</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3570\" class=\"blob-num js-line-number\" data-line-number=\"3570\"></td>\n        <td id=\"LC3570\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>[name] <span class=\"pl-k\">=</span> callback;</td>\n      </tr>\n      <tr>\n        <td id=\"L3571\" class=\"blob-num js-line-number\" data-line-number=\"3571\"></td>\n        <td id=\"LC3571\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addListener</span>(eventName, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L3572\" class=\"blob-num js-line-number\" data-line-number=\"3572\"></td>\n        <td id=\"LC3572\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3573\" class=\"blob-num js-line-number\" data-line-number=\"3573\"></td>\n        <td id=\"LC3573\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3574\" class=\"blob-num js-line-number\" data-line-number=\"3574\"></td>\n        <td id=\"LC3574\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3575\" class=\"blob-num js-line-number\" data-line-number=\"3575\"></td>\n        <td id=\"LC3575\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3576\" class=\"blob-num js-line-number\" data-line-number=\"3576\"></td>\n        <td id=\"LC3576\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">addNamedAsyncListener</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addNamedAsyncListener</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">eventName</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3577\" class=\"blob-num js-line-number\" data-line-number=\"3577\"></td>\n        <td id=\"LC3577\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">callback</span>.<span class=\"pl-smi\">_isAsync</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3578\" class=\"blob-num js-line-number\" data-line-number=\"3578\"></td>\n        <td id=\"LC3578\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addNamedListener</span>(name, eventName, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L3579\" class=\"blob-num js-line-number\" data-line-number=\"3579\"></td>\n        <td id=\"LC3579\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3580\" class=\"blob-num js-line-number\" data-line-number=\"3580\"></td>\n        <td id=\"LC3580\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3581\" class=\"blob-num js-line-number\" data-line-number=\"3581\"></td>\n        <td id=\"LC3581\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3582\" class=\"blob-num js-line-number\" data-line-number=\"3582\"></td>\n        <td id=\"LC3582\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">addNamedListeners</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addNamedListeners</span>(<span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3583\" class=\"blob-num js-line-number\" data-line-number=\"3583\"></td>\n        <td id=\"LC3583\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3584\" class=\"blob-num js-line-number\" data-line-number=\"3584\"></td>\n        <td id=\"LC3584\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">callback</span>(</td>\n      </tr>\n      <tr>\n        <td id=\"L3585\" class=\"blob-num js-line-number\" data-line-number=\"3585\"></td>\n        <td id=\"LC3585\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3586\" class=\"blob-num js-line-number\" data-line-number=\"3586\"></td>\n        <td id=\"LC3586\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">addNamedListener</span>.<span class=\"pl-c1\">apply</span>(self, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3587\" class=\"blob-num js-line-number\" data-line-number=\"3587\"></td>\n        <td id=\"LC3587\" class=\"blob-code blob-code-inner js-file-line\">      },</td>\n      </tr>\n      <tr>\n        <td id=\"L3588\" class=\"blob-num js-line-number\" data-line-number=\"3588\"></td>\n        <td id=\"LC3588\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3589\" class=\"blob-num js-line-number\" data-line-number=\"3589\"></td>\n        <td id=\"LC3589\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">addNamedAsyncListener</span>.<span class=\"pl-c1\">apply</span>(self, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3590\" class=\"blob-num js-line-number\" data-line-number=\"3590\"></td>\n        <td id=\"LC3590\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3591\" class=\"blob-num js-line-number\" data-line-number=\"3591\"></td>\n        <td id=\"LC3591\" class=\"blob-code blob-code-inner js-file-line\">    );</td>\n      </tr>\n      <tr>\n        <td id=\"L3592\" class=\"blob-num js-line-number\" data-line-number=\"3592\"></td>\n        <td id=\"LC3592\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3593\" class=\"blob-num js-line-number\" data-line-number=\"3593\"></td>\n        <td id=\"LC3593\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L3594\" class=\"blob-num js-line-number\" data-line-number=\"3594\"></td>\n        <td id=\"LC3594\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L3595\" class=\"blob-num js-line-number\" data-line-number=\"3595\"></td>\n        <td id=\"LC3595\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3596\" class=\"blob-num js-line-number\" data-line-number=\"3596\"></td>\n        <td id=\"LC3596\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3597\" class=\"blob-num js-line-number\" data-line-number=\"3597\"></td>\n        <td id=\"LC3597\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">SequentialExecutor</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">addListener</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">SequentialExecutor</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">on</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3598\" class=\"blob-num js-line-number\" data-line-number=\"3598\"></td>\n        <td id=\"LC3598\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3599\" class=\"blob-num js-line-number\" data-line-number=\"3599\"></td>\n        <td id=\"LC3599\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">SequentialExecutor</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3600\" class=\"blob-num js-line-number\" data-line-number=\"3600\"></td>\n        <td id=\"LC3600\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3601\" class=\"blob-num js-line-number\" data-line-number=\"3601\"></td>\n        <td id=\"LC3601\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">34</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L3602\" class=\"blob-num js-line-number\" data-line-number=\"3602\"></td>\n        <td id=\"LC3602\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3603\" class=\"blob-num js-line-number\" data-line-number=\"3603\"></td>\n        <td id=\"LC3603\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Api <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./model/api<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3604\" class=\"blob-num js-line-number\" data-line-number=\"3604\"></td>\n        <td id=\"LC3604\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> regionConfig <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./region_config<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3605\" class=\"blob-num js-line-number\" data-line-number=\"3605\"></td>\n        <td id=\"LC3605\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3606\" class=\"blob-num js-line-number\" data-line-number=\"3606\"></td>\n        <td id=\"LC3606\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3607\" class=\"blob-num js-line-number\" data-line-number=\"3607\"></td>\n        <td id=\"LC3607\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3608\" class=\"blob-num js-line-number\" data-line-number=\"3608\"></td>\n        <td id=\"LC3608\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L3609\" class=\"blob-num js-line-number\" data-line-number=\"3609\"></td>\n        <td id=\"LC3609\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3610\" class=\"blob-num js-line-number\" data-line-number=\"3610\"></td>\n        <td id=\"LC3610\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">Service</span>(<span class=\"pl-smi\">config</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3611\" class=\"blob-num js-line-number\" data-line-number=\"3611\"></td>\n        <td id=\"LC3611\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">loadServiceClass</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3612\" class=\"blob-num js-line-number\" data-line-number=\"3612\"></td>\n        <td id=\"LC3612\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(),</td>\n      </tr>\n      <tr>\n        <td id=\"L3613\" class=\"blob-num js-line-number\" data-line-number=\"3613\"></td>\n        <td id=\"LC3613\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Service must be constructed with `new<span class=\"pl-cce\">\\&#39;</span> operator<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3614\" class=\"blob-num js-line-number\" data-line-number=\"3614\"></td>\n        <td id=\"LC3614\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3615\" class=\"blob-num js-line-number\" data-line-number=\"3615\"></td>\n        <td id=\"LC3615\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> ServiceClass <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">loadServiceClass</span>(config <span class=\"pl-k\">||</span> {});</td>\n      </tr>\n      <tr>\n        <td id=\"L3616\" class=\"blob-num js-line-number\" data-line-number=\"3616\"></td>\n        <td id=\"LC3616\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (ServiceClass) <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">ServiceClass</span>(config);</td>\n      </tr>\n      <tr>\n        <td id=\"L3617\" class=\"blob-num js-line-number\" data-line-number=\"3617\"></td>\n        <td id=\"LC3617\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">initialize</span>(config);</td>\n      </tr>\n      <tr>\n        <td id=\"L3618\" class=\"blob-num js-line-number\" data-line-number=\"3618\"></td>\n        <td id=\"LC3618\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3619\" class=\"blob-num js-line-number\" data-line-number=\"3619\"></td>\n        <td id=\"LC3619\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3620\" class=\"blob-num js-line-number\" data-line-number=\"3620\"></td>\n        <td id=\"LC3620\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3621\" class=\"blob-num js-line-number\" data-line-number=\"3621\"></td>\n        <td id=\"LC3621\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">initialize</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">initialize</span>(<span class=\"pl-smi\">config</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3622\" class=\"blob-num js-line-number\" data-line-number=\"3622\"></td>\n        <td id=\"LC3622\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> svcConfig <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span>[<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">serviceIdentifier</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L3623\" class=\"blob-num js-line-number\" data-line-number=\"3623\"></td>\n        <td id=\"LC3623\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3624\" class=\"blob-num js-line-number\" data-line-number=\"3624\"></td>\n        <td id=\"LC3624\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.Config</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3625\" class=\"blob-num js-line-number\" data-line-number=\"3625\"></td>\n        <td id=\"LC3625\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (svcConfig) <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-en\">update</span>(svcConfig, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3626\" class=\"blob-num js-line-number\" data-line-number=\"3626\"></td>\n        <td id=\"LC3626\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (config) <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-en\">update</span>(config, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3627\" class=\"blob-num js-line-number\" data-line-number=\"3627\"></td>\n        <td id=\"LC3627\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3628\" class=\"blob-num js-line-number\" data-line-number=\"3628\"></td>\n        <td id=\"LC3628\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">validateService</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3629\" class=\"blob-num js-line-number\" data-line-number=\"3629\"></td>\n        <td id=\"LC3629\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">endpoint</span>) <span class=\"pl-en\">regionConfig</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3630\" class=\"blob-num js-line-number\" data-line-number=\"3630\"></td>\n        <td id=\"LC3630\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3631\" class=\"blob-num js-line-number\" data-line-number=\"3631\"></td>\n        <td id=\"LC3631\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">endpoint</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">endpointFromTemplate</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">endpoint</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3632\" class=\"blob-num js-line-number\" data-line-number=\"3632\"></td>\n        <td id=\"LC3632\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">setEndpoint</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">endpoint</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3633\" class=\"blob-num js-line-number\" data-line-number=\"3633\"></td>\n        <td id=\"LC3633\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3634\" class=\"blob-num js-line-number\" data-line-number=\"3634\"></td>\n        <td id=\"LC3634\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3635\" class=\"blob-num js-line-number\" data-line-number=\"3635\"></td>\n        <td id=\"LC3635\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3636\" class=\"blob-num js-line-number\" data-line-number=\"3636\"></td>\n        <td id=\"LC3636\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">validateService</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">validateService</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3637\" class=\"blob-num js-line-number\" data-line-number=\"3637\"></td>\n        <td id=\"LC3637\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3638\" class=\"blob-num js-line-number\" data-line-number=\"3638\"></td>\n        <td id=\"LC3638\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3639\" class=\"blob-num js-line-number\" data-line-number=\"3639\"></td>\n        <td id=\"LC3639\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3640\" class=\"blob-num js-line-number\" data-line-number=\"3640\"></td>\n        <td id=\"LC3640\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">loadServiceClass</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">loadServiceClass</span>(<span class=\"pl-smi\">serviceConfig</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3641\" class=\"blob-num js-line-number\" data-line-number=\"3641\"></td>\n        <td id=\"LC3641\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> config <span class=\"pl-k\">=</span> serviceConfig;</td>\n      </tr>\n      <tr>\n        <td id=\"L3642\" class=\"blob-num js-line-number\" data-line-number=\"3642\"></td>\n        <td id=\"LC3642\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isEmpty</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3643\" class=\"blob-num js-line-number\" data-line-number=\"3643\"></td>\n        <td id=\"LC3643\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3644\" class=\"blob-num js-line-number\" data-line-number=\"3644\"></td>\n        <td id=\"LC3644\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">apiConfig</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3645\" class=\"blob-num js-line-number\" data-line-number=\"3645\"></td>\n        <td id=\"LC3645\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>.<span class=\"pl-en\">defineServiceApi</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>, <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">apiConfig</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3646\" class=\"blob-num js-line-number\" data-line-number=\"3646\"></td>\n        <td id=\"LC3646\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-smi\">services</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3647\" class=\"blob-num js-line-number\" data-line-number=\"3647\"></td>\n        <td id=\"LC3647\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3648\" class=\"blob-num js-line-number\" data-line-number=\"3648\"></td>\n        <td id=\"LC3648\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3649\" class=\"blob-num js-line-number\" data-line-number=\"3649\"></td>\n        <td id=\"LC3649\" class=\"blob-code blob-code-inner js-file-line\">      config <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.Config</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3650\" class=\"blob-num js-line-number\" data-line-number=\"3650\"></td>\n        <td id=\"LC3650\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">config</span>.<span class=\"pl-en\">update</span>(serviceConfig, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3651\" class=\"blob-num js-line-number\" data-line-number=\"3651\"></td>\n        <td id=\"LC3651\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> version <span class=\"pl-k\">=</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">apiVersions</span>[<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-smi\">serviceIdentifier</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L3652\" class=\"blob-num js-line-number\" data-line-number=\"3652\"></td>\n        <td id=\"LC3652\" class=\"blob-code blob-code-inner js-file-line\">      version <span class=\"pl-k\">=</span> version <span class=\"pl-k\">||</span> <span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">apiVersion</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3653\" class=\"blob-num js-line-number\" data-line-number=\"3653\"></td>\n        <td id=\"LC3653\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">getLatestServiceClass</span>(version);</td>\n      </tr>\n      <tr>\n        <td id=\"L3654\" class=\"blob-num js-line-number\" data-line-number=\"3654\"></td>\n        <td id=\"LC3654\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3655\" class=\"blob-num js-line-number\" data-line-number=\"3655\"></td>\n        <td id=\"LC3655\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3656\" class=\"blob-num js-line-number\" data-line-number=\"3656\"></td>\n        <td id=\"LC3656\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3657\" class=\"blob-num js-line-number\" data-line-number=\"3657\"></td>\n        <td id=\"LC3657\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3658\" class=\"blob-num js-line-number\" data-line-number=\"3658\"></td>\n        <td id=\"LC3658\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">getLatestServiceClass</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">getLatestServiceClass</span>(<span class=\"pl-smi\">version</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3659\" class=\"blob-num js-line-number\" data-line-number=\"3659\"></td>\n        <td id=\"LC3659\" class=\"blob-code blob-code-inner js-file-line\">    version <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">getLatestServiceVersion</span>(version);</td>\n      </tr>\n      <tr>\n        <td id=\"L3660\" class=\"blob-num js-line-number\" data-line-number=\"3660\"></td>\n        <td id=\"LC3660\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-smi\">services</span>[version] <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3661\" class=\"blob-num js-line-number\" data-line-number=\"3661\"></td>\n        <td id=\"LC3661\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>.<span class=\"pl-en\">defineServiceApi</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>, version);</td>\n      </tr>\n      <tr>\n        <td id=\"L3662\" class=\"blob-num js-line-number\" data-line-number=\"3662\"></td>\n        <td id=\"LC3662\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3663\" class=\"blob-num js-line-number\" data-line-number=\"3663\"></td>\n        <td id=\"LC3663\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3664\" class=\"blob-num js-line-number\" data-line-number=\"3664\"></td>\n        <td id=\"LC3664\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-smi\">services</span>[version];</td>\n      </tr>\n      <tr>\n        <td id=\"L3665\" class=\"blob-num js-line-number\" data-line-number=\"3665\"></td>\n        <td id=\"LC3665\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3666\" class=\"blob-num js-line-number\" data-line-number=\"3666\"></td>\n        <td id=\"LC3666\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3667\" class=\"blob-num js-line-number\" data-line-number=\"3667\"></td>\n        <td id=\"LC3667\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3668\" class=\"blob-num js-line-number\" data-line-number=\"3668\"></td>\n        <td id=\"LC3668\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">getLatestServiceVersion</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">getLatestServiceVersion</span>(<span class=\"pl-smi\">version</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3669\" class=\"blob-num js-line-number\" data-line-number=\"3669\"></td>\n        <td id=\"LC3669\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-smi\">services</span> <span class=\"pl-k\">||</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-smi\">services</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3670\" class=\"blob-num js-line-number\" data-line-number=\"3670\"></td>\n        <td id=\"LC3670\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>No services defined on <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3671\" class=\"blob-num js-line-number\" data-line-number=\"3671\"></td>\n        <td id=\"LC3671\" class=\"blob-code blob-code-inner js-file-line\">                      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-smi\">serviceIdentifier</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3672\" class=\"blob-num js-line-number\" data-line-number=\"3672\"></td>\n        <td id=\"LC3672\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3673\" class=\"blob-num js-line-number\" data-line-number=\"3673\"></td>\n        <td id=\"LC3673\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3674\" class=\"blob-num js-line-number\" data-line-number=\"3674\"></td>\n        <td id=\"LC3674\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>version) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3675\" class=\"blob-num js-line-number\" data-line-number=\"3675\"></td>\n        <td id=\"LC3675\" class=\"blob-code blob-code-inner js-file-line\">      version <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>latest<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3676\" class=\"blob-num js-line-number\" data-line-number=\"3676\"></td>\n        <td id=\"LC3676\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isType</span>(version, <span class=\"pl-c1\">Date</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3677\" class=\"blob-num js-line-number\" data-line-number=\"3677\"></td>\n        <td id=\"LC3677\" class=\"blob-code blob-code-inner js-file-line\">      version <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-en\">iso8601</span>(version).<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>T<span class=\"pl-pds\">&#39;</span></span>)[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L3678\" class=\"blob-num js-line-number\" data-line-number=\"3678\"></td>\n        <td id=\"LC3678\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3679\" class=\"blob-num js-line-number\" data-line-number=\"3679\"></td>\n        <td id=\"LC3679\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3680\" class=\"blob-num js-line-number\" data-line-number=\"3680\"></td>\n        <td id=\"LC3680\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">hasOwnProperty</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-smi\">services</span>, version)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3681\" class=\"blob-num js-line-number\" data-line-number=\"3681\"></td>\n        <td id=\"LC3681\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> version;</td>\n      </tr>\n      <tr>\n        <td id=\"L3682\" class=\"blob-num js-line-number\" data-line-number=\"3682\"></td>\n        <td id=\"LC3682\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3683\" class=\"blob-num js-line-number\" data-line-number=\"3683\"></td>\n        <td id=\"LC3683\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3684\" class=\"blob-num js-line-number\" data-line-number=\"3684\"></td>\n        <td id=\"LC3684\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> keys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-smi\">services</span>).<span class=\"pl-c1\">sort</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3685\" class=\"blob-num js-line-number\" data-line-number=\"3685\"></td>\n        <td id=\"LC3685\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> selectedVersion <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3686\" class=\"blob-num js-line-number\" data-line-number=\"3686\"></td>\n        <td id=\"LC3686\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-smi\">keys</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>; i <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>; i<span class=\"pl-k\">--</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3687\" class=\"blob-num js-line-number\" data-line-number=\"3687\"></td>\n        <td id=\"LC3687\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (keys[i][keys[i].<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>] <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>*<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3688\" class=\"blob-num js-line-number\" data-line-number=\"3688\"></td>\n        <td id=\"LC3688\" class=\"blob-code blob-code-inner js-file-line\">        selectedVersion <span class=\"pl-k\">=</span> keys[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L3689\" class=\"blob-num js-line-number\" data-line-number=\"3689\"></td>\n        <td id=\"LC3689\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3690\" class=\"blob-num js-line-number\" data-line-number=\"3690\"></td>\n        <td id=\"LC3690\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (keys[i].<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">0</span>, <span class=\"pl-c1\">10</span>) <span class=\"pl-k\">&lt;=</span> version) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3691\" class=\"blob-num js-line-number\" data-line-number=\"3691\"></td>\n        <td id=\"LC3691\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> selectedVersion;</td>\n      </tr>\n      <tr>\n        <td id=\"L3692\" class=\"blob-num js-line-number\" data-line-number=\"3692\"></td>\n        <td id=\"LC3692\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3693\" class=\"blob-num js-line-number\" data-line-number=\"3693\"></td>\n        <td id=\"LC3693\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3694\" class=\"blob-num js-line-number\" data-line-number=\"3694\"></td>\n        <td id=\"LC3694\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3695\" class=\"blob-num js-line-number\" data-line-number=\"3695\"></td>\n        <td id=\"LC3695\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Could not find <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-smi\">serviceIdentifier</span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3696\" class=\"blob-num js-line-number\" data-line-number=\"3696\"></td>\n        <td id=\"LC3696\" class=\"blob-code blob-code-inner js-file-line\">                    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> API to satisfy version constraint `<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> version <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3697\" class=\"blob-num js-line-number\" data-line-number=\"3697\"></td>\n        <td id=\"LC3697\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3698\" class=\"blob-num js-line-number\" data-line-number=\"3698\"></td>\n        <td id=\"LC3698\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3699\" class=\"blob-num js-line-number\" data-line-number=\"3699\"></td>\n        <td id=\"LC3699\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3700\" class=\"blob-num js-line-number\" data-line-number=\"3700\"></td>\n        <td id=\"LC3700\" class=\"blob-code blob-code-inner js-file-line\">  api<span class=\"pl-k\">:</span> {},</td>\n      </tr>\n      <tr>\n        <td id=\"L3701\" class=\"blob-num js-line-number\" data-line-number=\"3701\"></td>\n        <td id=\"LC3701\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3702\" class=\"blob-num js-line-number\" data-line-number=\"3702\"></td>\n        <td id=\"LC3702\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3703\" class=\"blob-num js-line-number\" data-line-number=\"3703\"></td>\n        <td id=\"LC3703\" class=\"blob-code blob-code-inner js-file-line\">  defaultRetryCount<span class=\"pl-k\">:</span> <span class=\"pl-c1\">3</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L3704\" class=\"blob-num js-line-number\" data-line-number=\"3704\"></td>\n        <td id=\"LC3704\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3705\" class=\"blob-num js-line-number\" data-line-number=\"3705\"></td>\n        <td id=\"LC3705\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3706\" class=\"blob-num js-line-number\" data-line-number=\"3706\"></td>\n        <td id=\"LC3706\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">makeRequest</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">makeRequest</span>(<span class=\"pl-smi\">operation</span>, <span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3707\" class=\"blob-num js-line-number\" data-line-number=\"3707\"></td>\n        <td id=\"LC3707\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> params <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3708\" class=\"blob-num js-line-number\" data-line-number=\"3708\"></td>\n        <td id=\"LC3708\" class=\"blob-code blob-code-inner js-file-line\">      callback <span class=\"pl-k\">=</span> params;</td>\n      </tr>\n      <tr>\n        <td id=\"L3709\" class=\"blob-num js-line-number\" data-line-number=\"3709\"></td>\n        <td id=\"LC3709\" class=\"blob-code blob-code-inner js-file-line\">      params <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3710\" class=\"blob-num js-line-number\" data-line-number=\"3710\"></td>\n        <td id=\"LC3710\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3711\" class=\"blob-num js-line-number\" data-line-number=\"3711\"></td>\n        <td id=\"LC3711\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3712\" class=\"blob-num js-line-number\" data-line-number=\"3712\"></td>\n        <td id=\"LC3712\" class=\"blob-code blob-code-inner js-file-line\">    params <span class=\"pl-k\">=</span> params <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L3713\" class=\"blob-num js-line-number\" data-line-number=\"3713\"></td>\n        <td id=\"LC3713\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">params</span>) { <span class=\"pl-c\">// copy only toplevel bound params</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3714\" class=\"blob-num js-line-number\" data-line-number=\"3714\"></td>\n        <td id=\"LC3714\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> rules <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[operation];</td>\n      </tr>\n      <tr>\n        <td id=\"L3715\" class=\"blob-num js-line-number\" data-line-number=\"3715\"></td>\n        <td id=\"LC3715\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (rules) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3716\" class=\"blob-num js-line-number\" data-line-number=\"3716\"></td>\n        <td id=\"LC3716\" class=\"blob-code blob-code-inner js-file-line\">        params <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">copy</span>(params);</td>\n      </tr>\n      <tr>\n        <td id=\"L3717\" class=\"blob-num js-line-number\" data-line-number=\"3717\"></td>\n        <td id=\"LC3717\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">params</span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3718\" class=\"blob-num js-line-number\" data-line-number=\"3718\"></td>\n        <td id=\"LC3718\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">rules</span>.<span class=\"pl-c1\">input</span>.<span class=\"pl-smi\">members</span>[key]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3719\" class=\"blob-num js-line-number\" data-line-number=\"3719\"></td>\n        <td id=\"LC3719\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">if</span> (params[key] <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">||</span> params[key] <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3720\" class=\"blob-num js-line-number\" data-line-number=\"3720\"></td>\n        <td id=\"LC3720\" class=\"blob-code blob-code-inner js-file-line\">              params[key] <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L3721\" class=\"blob-num js-line-number\" data-line-number=\"3721\"></td>\n        <td id=\"LC3721\" class=\"blob-code blob-code-inner js-file-line\">            }</td>\n      </tr>\n      <tr>\n        <td id=\"L3722\" class=\"blob-num js-line-number\" data-line-number=\"3722\"></td>\n        <td id=\"LC3722\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L3723\" class=\"blob-num js-line-number\" data-line-number=\"3723\"></td>\n        <td id=\"LC3723\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L3724\" class=\"blob-num js-line-number\" data-line-number=\"3724\"></td>\n        <td id=\"LC3724\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3725\" class=\"blob-num js-line-number\" data-line-number=\"3725\"></td>\n        <td id=\"LC3725\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3726\" class=\"blob-num js-line-number\" data-line-number=\"3726\"></td>\n        <td id=\"LC3726\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3727\" class=\"blob-num js-line-number\" data-line-number=\"3727\"></td>\n        <td id=\"LC3727\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> request <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.Request</span>(<span class=\"pl-v\">this</span>, operation, params);</td>\n      </tr>\n      <tr>\n        <td id=\"L3728\" class=\"blob-num js-line-number\" data-line-number=\"3728\"></td>\n        <td id=\"LC3728\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addAllRequestListeners</span>(request);</td>\n      </tr>\n      <tr>\n        <td id=\"L3729\" class=\"blob-num js-line-number\" data-line-number=\"3729\"></td>\n        <td id=\"LC3729\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3730\" class=\"blob-num js-line-number\" data-line-number=\"3730\"></td>\n        <td id=\"LC3730\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (callback) <span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">send</span>(callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L3731\" class=\"blob-num js-line-number\" data-line-number=\"3731\"></td>\n        <td id=\"LC3731\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> request;</td>\n      </tr>\n      <tr>\n        <td id=\"L3732\" class=\"blob-num js-line-number\" data-line-number=\"3732\"></td>\n        <td id=\"LC3732\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3733\" class=\"blob-num js-line-number\" data-line-number=\"3733\"></td>\n        <td id=\"LC3733\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3734\" class=\"blob-num js-line-number\" data-line-number=\"3734\"></td>\n        <td id=\"LC3734\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3735\" class=\"blob-num js-line-number\" data-line-number=\"3735\"></td>\n        <td id=\"LC3735\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">makeUnauthenticatedRequest</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">makeUnauthenticatedRequest</span>(<span class=\"pl-smi\">operation</span>, <span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3736\" class=\"blob-num js-line-number\" data-line-number=\"3736\"></td>\n        <td id=\"LC3736\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> params <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3737\" class=\"blob-num js-line-number\" data-line-number=\"3737\"></td>\n        <td id=\"LC3737\" class=\"blob-code blob-code-inner js-file-line\">      callback <span class=\"pl-k\">=</span> params;</td>\n      </tr>\n      <tr>\n        <td id=\"L3738\" class=\"blob-num js-line-number\" data-line-number=\"3738\"></td>\n        <td id=\"LC3738\" class=\"blob-code blob-code-inner js-file-line\">      params <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L3739\" class=\"blob-num js-line-number\" data-line-number=\"3739\"></td>\n        <td id=\"LC3739\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3740\" class=\"blob-num js-line-number\" data-line-number=\"3740\"></td>\n        <td id=\"LC3740\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3741\" class=\"blob-num js-line-number\" data-line-number=\"3741\"></td>\n        <td id=\"LC3741\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> request <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">makeRequest</span>(operation, params).<span class=\"pl-en\">toUnauthenticated</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3742\" class=\"blob-num js-line-number\" data-line-number=\"3742\"></td>\n        <td id=\"LC3742\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> callback <span class=\"pl-k\">?</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">send</span>(callback) <span class=\"pl-k\">:</span> request;</td>\n      </tr>\n      <tr>\n        <td id=\"L3743\" class=\"blob-num js-line-number\" data-line-number=\"3743\"></td>\n        <td id=\"LC3743\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3744\" class=\"blob-num js-line-number\" data-line-number=\"3744\"></td>\n        <td id=\"LC3744\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3745\" class=\"blob-num js-line-number\" data-line-number=\"3745\"></td>\n        <td id=\"LC3745\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3746\" class=\"blob-num js-line-number\" data-line-number=\"3746\"></td>\n        <td id=\"LC3746\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">waitFor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">waitFor</span>(<span class=\"pl-smi\">state</span>, <span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3747\" class=\"blob-num js-line-number\" data-line-number=\"3747\"></td>\n        <td id=\"LC3747\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> waiter <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.ResourceWaiter</span>(<span class=\"pl-v\">this</span>, state);</td>\n      </tr>\n      <tr>\n        <td id=\"L3748\" class=\"blob-num js-line-number\" data-line-number=\"3748\"></td>\n        <td id=\"LC3748\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">waiter</span>.<span class=\"pl-en\">wait</span>(params, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L3749\" class=\"blob-num js-line-number\" data-line-number=\"3749\"></td>\n        <td id=\"LC3749\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3750\" class=\"blob-num js-line-number\" data-line-number=\"3750\"></td>\n        <td id=\"LC3750\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3751\" class=\"blob-num js-line-number\" data-line-number=\"3751\"></td>\n        <td id=\"LC3751\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3752\" class=\"blob-num js-line-number\" data-line-number=\"3752\"></td>\n        <td id=\"LC3752\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">addAllRequestListeners</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addAllRequestListeners</span>(<span class=\"pl-smi\">request</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3753\" class=\"blob-num js-line-number\" data-line-number=\"3753\"></td>\n        <td id=\"LC3753\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> list <span class=\"pl-k\">=</span> [<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">events</span>, <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Core</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-en\">serviceInterface</span>(),</td>\n      </tr>\n      <tr>\n        <td id=\"L3754\" class=\"blob-num js-line-number\" data-line-number=\"3754\"></td>\n        <td id=\"LC3754\" class=\"blob-code blob-code-inner js-file-line\">                <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">CorePost</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L3755\" class=\"blob-num js-line-number\" data-line-number=\"3755\"></td>\n        <td id=\"LC3755\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">list</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3756\" class=\"blob-num js-line-number\" data-line-number=\"3756\"></td>\n        <td id=\"LC3756\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (list[i]) <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">addListeners</span>(list[i]);</td>\n      </tr>\n      <tr>\n        <td id=\"L3757\" class=\"blob-num js-line-number\" data-line-number=\"3757\"></td>\n        <td id=\"LC3757\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3758\" class=\"blob-num js-line-number\" data-line-number=\"3758\"></td>\n        <td id=\"LC3758\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3759\" class=\"blob-num js-line-number\" data-line-number=\"3759\"></td>\n        <td id=\"LC3759\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">paramValidation</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3760\" class=\"blob-num js-line-number\" data-line-number=\"3760\"></td>\n        <td id=\"LC3760\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">removeListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>validate<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L3761\" class=\"blob-num js-line-number\" data-line-number=\"3761\"></td>\n        <td id=\"LC3761\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Core</span>.<span class=\"pl-c1\">VALIDATE_PARAMETERS</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3762\" class=\"blob-num js-line-number\" data-line-number=\"3762\"></td>\n        <td id=\"LC3762\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3763\" class=\"blob-num js-line-number\" data-line-number=\"3763\"></td>\n        <td id=\"LC3763\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3764\" class=\"blob-num js-line-number\" data-line-number=\"3764\"></td>\n        <td id=\"LC3764\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">logger</span>) { <span class=\"pl-c\">// add logging events</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3765\" class=\"blob-num js-line-number\" data-line-number=\"3765\"></td>\n        <td id=\"LC3765\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">addListeners</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Logger</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3766\" class=\"blob-num js-line-number\" data-line-number=\"3766\"></td>\n        <td id=\"LC3766\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3767\" class=\"blob-num js-line-number\" data-line-number=\"3767\"></td>\n        <td id=\"LC3767\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3768\" class=\"blob-num js-line-number\" data-line-number=\"3768\"></td>\n        <td id=\"LC3768\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">setupRequestListeners</span>(request);</td>\n      </tr>\n      <tr>\n        <td id=\"L3769\" class=\"blob-num js-line-number\" data-line-number=\"3769\"></td>\n        <td id=\"LC3769\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3770\" class=\"blob-num js-line-number\" data-line-number=\"3770\"></td>\n        <td id=\"LC3770\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3771\" class=\"blob-num js-line-number\" data-line-number=\"3771\"></td>\n        <td id=\"LC3771\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3772\" class=\"blob-num js-line-number\" data-line-number=\"3772\"></td>\n        <td id=\"LC3772\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">setupRequestListeners</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">setupRequestListeners</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3773\" class=\"blob-num js-line-number\" data-line-number=\"3773\"></td>\n        <td id=\"LC3773\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3774\" class=\"blob-num js-line-number\" data-line-number=\"3774\"></td>\n        <td id=\"LC3774\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3775\" class=\"blob-num js-line-number\" data-line-number=\"3775\"></td>\n        <td id=\"LC3775\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3776\" class=\"blob-num js-line-number\" data-line-number=\"3776\"></td>\n        <td id=\"LC3776\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">getSignerClass</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">getSignerClass</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3777\" class=\"blob-num js-line-number\" data-line-number=\"3777\"></td>\n        <td id=\"LC3777\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> version;</td>\n      </tr>\n      <tr>\n        <td id=\"L3778\" class=\"blob-num js-line-number\" data-line-number=\"3778\"></td>\n        <td id=\"LC3778\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">signatureVersion</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3779\" class=\"blob-num js-line-number\" data-line-number=\"3779\"></td>\n        <td id=\"LC3779\" class=\"blob-code blob-code-inner js-file-line\">      version <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">signatureVersion</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3780\" class=\"blob-num js-line-number\" data-line-number=\"3780\"></td>\n        <td id=\"LC3780\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3781\" class=\"blob-num js-line-number\" data-line-number=\"3781\"></td>\n        <td id=\"LC3781\" class=\"blob-code blob-code-inner js-file-line\">      version <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">signatureVersion</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3782\" class=\"blob-num js-line-number\" data-line-number=\"3782\"></td>\n        <td id=\"LC3782\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3783\" class=\"blob-num js-line-number\" data-line-number=\"3783\"></td>\n        <td id=\"LC3783\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">RequestSigner</span>.<span class=\"pl-en\">getVersion</span>(version);</td>\n      </tr>\n      <tr>\n        <td id=\"L3784\" class=\"blob-num js-line-number\" data-line-number=\"3784\"></td>\n        <td id=\"LC3784\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3785\" class=\"blob-num js-line-number\" data-line-number=\"3785\"></td>\n        <td id=\"LC3785\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3786\" class=\"blob-num js-line-number\" data-line-number=\"3786\"></td>\n        <td id=\"LC3786\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3787\" class=\"blob-num js-line-number\" data-line-number=\"3787\"></td>\n        <td id=\"LC3787\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">serviceInterface</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">serviceInterface</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3788\" class=\"blob-num js-line-number\" data-line-number=\"3788\"></td>\n        <td id=\"LC3788\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">switch</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-c1\">protocol</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3789\" class=\"blob-num js-line-number\" data-line-number=\"3789\"></td>\n        <td id=\"LC3789\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ec2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Query</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3790\" class=\"blob-num js-line-number\" data-line-number=\"3790\"></td>\n        <td id=\"LC3790\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>query<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Query</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3791\" class=\"blob-num js-line-number\" data-line-number=\"3791\"></td>\n        <td id=\"LC3791\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>json<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Json</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3792\" class=\"blob-num js-line-number\" data-line-number=\"3792\"></td>\n        <td id=\"LC3792\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>rest-json<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">RestJson</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3793\" class=\"blob-num js-line-number\" data-line-number=\"3793\"></td>\n        <td id=\"LC3793\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>rest-xml<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">RestXml</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3794\" class=\"blob-num js-line-number\" data-line-number=\"3794\"></td>\n        <td id=\"LC3794\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3795\" class=\"blob-num js-line-number\" data-line-number=\"3795\"></td>\n        <td id=\"LC3795\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-c1\">protocol</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3796\" class=\"blob-num js-line-number\" data-line-number=\"3796\"></td>\n        <td id=\"LC3796\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Invalid service `protocol<span class=\"pl-cce\">\\&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3797\" class=\"blob-num js-line-number\" data-line-number=\"3797\"></td>\n        <td id=\"LC3797\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> in API config<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3798\" class=\"blob-num js-line-number\" data-line-number=\"3798\"></td>\n        <td id=\"LC3798\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3799\" class=\"blob-num js-line-number\" data-line-number=\"3799\"></td>\n        <td id=\"LC3799\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3800\" class=\"blob-num js-line-number\" data-line-number=\"3800\"></td>\n        <td id=\"LC3800\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3801\" class=\"blob-num js-line-number\" data-line-number=\"3801\"></td>\n        <td id=\"LC3801\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3802\" class=\"blob-num js-line-number\" data-line-number=\"3802\"></td>\n        <td id=\"LC3802\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">successfulResponse</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">successfulResponse</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3803\" class=\"blob-num js-line-number\" data-line-number=\"3803\"></td>\n        <td id=\"LC3803\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-smi\">statusCode</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">300</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3804\" class=\"blob-num js-line-number\" data-line-number=\"3804\"></td>\n        <td id=\"LC3804\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3805\" class=\"blob-num js-line-number\" data-line-number=\"3805\"></td>\n        <td id=\"LC3805\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3806\" class=\"blob-num js-line-number\" data-line-number=\"3806\"></td>\n        <td id=\"LC3806\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3807\" class=\"blob-num js-line-number\" data-line-number=\"3807\"></td>\n        <td id=\"LC3807\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">numRetries</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">numRetries</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L3808\" class=\"blob-num js-line-number\" data-line-number=\"3808\"></td>\n        <td id=\"LC3808\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">maxRetries</span> <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3809\" class=\"blob-num js-line-number\" data-line-number=\"3809\"></td>\n        <td id=\"LC3809\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">maxRetries</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3810\" class=\"blob-num js-line-number\" data-line-number=\"3810\"></td>\n        <td id=\"LC3810\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3811\" class=\"blob-num js-line-number\" data-line-number=\"3811\"></td>\n        <td id=\"LC3811\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">defaultRetryCount</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3812\" class=\"blob-num js-line-number\" data-line-number=\"3812\"></td>\n        <td id=\"LC3812\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3813\" class=\"blob-num js-line-number\" data-line-number=\"3813\"></td>\n        <td id=\"LC3813\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3814\" class=\"blob-num js-line-number\" data-line-number=\"3814\"></td>\n        <td id=\"LC3814\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3815\" class=\"blob-num js-line-number\" data-line-number=\"3815\"></td>\n        <td id=\"LC3815\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3816\" class=\"blob-num js-line-number\" data-line-number=\"3816\"></td>\n        <td id=\"LC3816\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">retryDelays</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">retryDelays</span>(<span class=\"pl-smi\">retryCount</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3817\" class=\"blob-num js-line-number\" data-line-number=\"3817\"></td>\n        <td id=\"LC3817\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> retryDelayOptions <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">retryDelayOptions</span> <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L3818\" class=\"blob-num js-line-number\" data-line-number=\"3818\"></td>\n        <td id=\"LC3818\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> customBackoff <span class=\"pl-k\">=</span> <span class=\"pl-smi\">retryDelayOptions</span>.<span class=\"pl-smi\">customBackoff</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3819\" class=\"blob-num js-line-number\" data-line-number=\"3819\"></td>\n        <td id=\"LC3819\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> customBackoff <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3820\" class=\"blob-num js-line-number\" data-line-number=\"3820\"></td>\n        <td id=\"LC3820\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">customBackoff</span>(retryCount);</td>\n      </tr>\n      <tr>\n        <td id=\"L3821\" class=\"blob-num js-line-number\" data-line-number=\"3821\"></td>\n        <td id=\"LC3821\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3822\" class=\"blob-num js-line-number\" data-line-number=\"3822\"></td>\n        <td id=\"LC3822\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> base <span class=\"pl-k\">=</span> <span class=\"pl-smi\">retryDelayOptions</span>.<span class=\"pl-smi\">base</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">30</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3823\" class=\"blob-num js-line-number\" data-line-number=\"3823\"></td>\n        <td id=\"LC3823\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> delay <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">random</span>() <span class=\"pl-k\">*</span> (<span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, retryCount) <span class=\"pl-k\">*</span> base);</td>\n      </tr>\n      <tr>\n        <td id=\"L3824\" class=\"blob-num js-line-number\" data-line-number=\"3824\"></td>\n        <td id=\"LC3824\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> delay;</td>\n      </tr>\n      <tr>\n        <td id=\"L3825\" class=\"blob-num js-line-number\" data-line-number=\"3825\"></td>\n        <td id=\"LC3825\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3826\" class=\"blob-num js-line-number\" data-line-number=\"3826\"></td>\n        <td id=\"LC3826\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3827\" class=\"blob-num js-line-number\" data-line-number=\"3827\"></td>\n        <td id=\"LC3827\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3828\" class=\"blob-num js-line-number\" data-line-number=\"3828\"></td>\n        <td id=\"LC3828\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">retryableError</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">retryableError</span>(<span class=\"pl-smi\">error</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3829\" class=\"blob-num js-line-number\" data-line-number=\"3829\"></td>\n        <td id=\"LC3829\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">networkingError</span>(error)) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3830\" class=\"blob-num js-line-number\" data-line-number=\"3830\"></td>\n        <td id=\"LC3830\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">expiredCredentialsError</span>(error)) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3831\" class=\"blob-num js-line-number\" data-line-number=\"3831\"></td>\n        <td id=\"LC3831\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">throttledError</span>(error)) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3832\" class=\"blob-num js-line-number\" data-line-number=\"3832\"></td>\n        <td id=\"LC3832\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">statusCode</span> <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">500</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3833\" class=\"blob-num js-line-number\" data-line-number=\"3833\"></td>\n        <td id=\"LC3833\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3834\" class=\"blob-num js-line-number\" data-line-number=\"3834\"></td>\n        <td id=\"LC3834\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3835\" class=\"blob-num js-line-number\" data-line-number=\"3835\"></td>\n        <td id=\"LC3835\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3836\" class=\"blob-num js-line-number\" data-line-number=\"3836\"></td>\n        <td id=\"LC3836\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3837\" class=\"blob-num js-line-number\" data-line-number=\"3837\"></td>\n        <td id=\"LC3837\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">networkingError</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">networkingError</span>(<span class=\"pl-smi\">error</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3838\" class=\"blob-num js-line-number\" data-line-number=\"3838\"></td>\n        <td id=\"LC3838\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>NetworkingError<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3839\" class=\"blob-num js-line-number\" data-line-number=\"3839\"></td>\n        <td id=\"LC3839\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3840\" class=\"blob-num js-line-number\" data-line-number=\"3840\"></td>\n        <td id=\"LC3840\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3841\" class=\"blob-num js-line-number\" data-line-number=\"3841\"></td>\n        <td id=\"LC3841\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3842\" class=\"blob-num js-line-number\" data-line-number=\"3842\"></td>\n        <td id=\"LC3842\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">expiredCredentialsError</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">expiredCredentialsError</span>(<span class=\"pl-smi\">error</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3843\" class=\"blob-num js-line-number\" data-line-number=\"3843\"></td>\n        <td id=\"LC3843\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> (<span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ExpiredTokenException<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3844\" class=\"blob-num js-line-number\" data-line-number=\"3844\"></td>\n        <td id=\"LC3844\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3845\" class=\"blob-num js-line-number\" data-line-number=\"3845\"></td>\n        <td id=\"LC3845\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3846\" class=\"blob-num js-line-number\" data-line-number=\"3846\"></td>\n        <td id=\"LC3846\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3847\" class=\"blob-num js-line-number\" data-line-number=\"3847\"></td>\n        <td id=\"LC3847\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">clockSkewError</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">clockSkewError</span>(<span class=\"pl-smi\">error</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3848\" class=\"blob-num js-line-number\" data-line-number=\"3848\"></td>\n        <td id=\"LC3848\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">switch</span> (<span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3849\" class=\"blob-num js-line-number\" data-line-number=\"3849\"></td>\n        <td id=\"LC3849\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RequestTimeTooSkewed<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3850\" class=\"blob-num js-line-number\" data-line-number=\"3850\"></td>\n        <td id=\"LC3850\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RequestExpired<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3851\" class=\"blob-num js-line-number\" data-line-number=\"3851\"></td>\n        <td id=\"LC3851\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>InvalidSignatureException<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3852\" class=\"blob-num js-line-number\" data-line-number=\"3852\"></td>\n        <td id=\"LC3852\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>SignatureDoesNotMatch<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3853\" class=\"blob-num js-line-number\" data-line-number=\"3853\"></td>\n        <td id=\"LC3853\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AuthFailure<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3854\" class=\"blob-num js-line-number\" data-line-number=\"3854\"></td>\n        <td id=\"LC3854\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RequestInTheFuture<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3855\" class=\"blob-num js-line-number\" data-line-number=\"3855\"></td>\n        <td id=\"LC3855\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3856\" class=\"blob-num js-line-number\" data-line-number=\"3856\"></td>\n        <td id=\"LC3856\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3857\" class=\"blob-num js-line-number\" data-line-number=\"3857\"></td>\n        <td id=\"LC3857\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3858\" class=\"blob-num js-line-number\" data-line-number=\"3858\"></td>\n        <td id=\"LC3858\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3859\" class=\"blob-num js-line-number\" data-line-number=\"3859\"></td>\n        <td id=\"LC3859\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3860\" class=\"blob-num js-line-number\" data-line-number=\"3860\"></td>\n        <td id=\"LC3860\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3861\" class=\"blob-num js-line-number\" data-line-number=\"3861\"></td>\n        <td id=\"LC3861\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">throttledError</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">throttledError</span>(<span class=\"pl-smi\">error</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3862\" class=\"blob-num js-line-number\" data-line-number=\"3862\"></td>\n        <td id=\"LC3862\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">switch</span> (<span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">code</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3863\" class=\"blob-num js-line-number\" data-line-number=\"3863\"></td>\n        <td id=\"LC3863\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ProvisionedThroughputExceededException<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3864\" class=\"blob-num js-line-number\" data-line-number=\"3864\"></td>\n        <td id=\"LC3864\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Throttling<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3865\" class=\"blob-num js-line-number\" data-line-number=\"3865\"></td>\n        <td id=\"LC3865\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ThrottlingException<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3866\" class=\"blob-num js-line-number\" data-line-number=\"3866\"></td>\n        <td id=\"LC3866\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RequestLimitExceeded<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3867\" class=\"blob-num js-line-number\" data-line-number=\"3867\"></td>\n        <td id=\"LC3867\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>RequestThrottled<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3868\" class=\"blob-num js-line-number\" data-line-number=\"3868\"></td>\n        <td id=\"LC3868\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3869\" class=\"blob-num js-line-number\" data-line-number=\"3869\"></td>\n        <td id=\"LC3869\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3870\" class=\"blob-num js-line-number\" data-line-number=\"3870\"></td>\n        <td id=\"LC3870\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3871\" class=\"blob-num js-line-number\" data-line-number=\"3871\"></td>\n        <td id=\"LC3871\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3872\" class=\"blob-num js-line-number\" data-line-number=\"3872\"></td>\n        <td id=\"LC3872\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3873\" class=\"blob-num js-line-number\" data-line-number=\"3873\"></td>\n        <td id=\"LC3873\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3874\" class=\"blob-num js-line-number\" data-line-number=\"3874\"></td>\n        <td id=\"LC3874\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3875\" class=\"blob-num js-line-number\" data-line-number=\"3875\"></td>\n        <td id=\"LC3875\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">endpointFromTemplate</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">endpointFromTemplate</span>(<span class=\"pl-smi\">endpoint</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3876\" class=\"blob-num js-line-number\" data-line-number=\"3876\"></td>\n        <td id=\"LC3876\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> endpoint <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span> endpoint;</td>\n      </tr>\n      <tr>\n        <td id=\"L3877\" class=\"blob-num js-line-number\" data-line-number=\"3877\"></td>\n        <td id=\"LC3877\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3878\" class=\"blob-num js-line-number\" data-line-number=\"3878\"></td>\n        <td id=\"LC3878\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> e <span class=\"pl-k\">=</span> endpoint;</td>\n      </tr>\n      <tr>\n        <td id=\"L3879\" class=\"blob-num js-line-number\" data-line-number=\"3879\"></td>\n        <td id=\"LC3879\" class=\"blob-code blob-code-inner js-file-line\">    e <span class=\"pl-k\">=</span> <span class=\"pl-smi\">e</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\{</span>service<span class=\"pl-cce\">\\}</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">endpointPrefix</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3880\" class=\"blob-num js-line-number\" data-line-number=\"3880\"></td>\n        <td id=\"LC3880\" class=\"blob-code blob-code-inner js-file-line\">    e <span class=\"pl-k\">=</span> <span class=\"pl-smi\">e</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\{</span>region<span class=\"pl-cce\">\\}</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">region</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3881\" class=\"blob-num js-line-number\" data-line-number=\"3881\"></td>\n        <td id=\"LC3881\" class=\"blob-code blob-code-inner js-file-line\">    e <span class=\"pl-k\">=</span> <span class=\"pl-smi\">e</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\{</span>scheme<span class=\"pl-cce\">\\}</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">sslEnabled</span> <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>https<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>http<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3882\" class=\"blob-num js-line-number\" data-line-number=\"3882\"></td>\n        <td id=\"LC3882\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> e;</td>\n      </tr>\n      <tr>\n        <td id=\"L3883\" class=\"blob-num js-line-number\" data-line-number=\"3883\"></td>\n        <td id=\"LC3883\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3884\" class=\"blob-num js-line-number\" data-line-number=\"3884\"></td>\n        <td id=\"LC3884\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3885\" class=\"blob-num js-line-number\" data-line-number=\"3885\"></td>\n        <td id=\"LC3885\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3886\" class=\"blob-num js-line-number\" data-line-number=\"3886\"></td>\n        <td id=\"LC3886\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">setEndpoint</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">setEndpoint</span>(<span class=\"pl-smi\">endpoint</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3887\" class=\"blob-num js-line-number\" data-line-number=\"3887\"></td>\n        <td id=\"LC3887\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">endpoint</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.Endpoint</span>(endpoint, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">config</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L3888\" class=\"blob-num js-line-number\" data-line-number=\"3888\"></td>\n        <td id=\"LC3888\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3889\" class=\"blob-num js-line-number\" data-line-number=\"3889\"></td>\n        <td id=\"LC3889\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3890\" class=\"blob-num js-line-number\" data-line-number=\"3890\"></td>\n        <td id=\"LC3890\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3891\" class=\"blob-num js-line-number\" data-line-number=\"3891\"></td>\n        <td id=\"LC3891\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">paginationConfig</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">paginationConfig</span>(<span class=\"pl-smi\">operation</span>, <span class=\"pl-smi\">throwException</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3892\" class=\"blob-num js-line-number\" data-line-number=\"3892\"></td>\n        <td id=\"LC3892\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> paginator <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[operation].<span class=\"pl-smi\">paginator</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3893\" class=\"blob-num js-line-number\" data-line-number=\"3893\"></td>\n        <td id=\"LC3893\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>paginator) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3894\" class=\"blob-num js-line-number\" data-line-number=\"3894\"></td>\n        <td id=\"LC3894\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (throwException) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3895\" class=\"blob-num js-line-number\" data-line-number=\"3895\"></td>\n        <td id=\"LC3895\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> e <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3896\" class=\"blob-num js-line-number\" data-line-number=\"3896\"></td>\n        <td id=\"LC3896\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(e, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>No pagination configuration for <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> operation);</td>\n      </tr>\n      <tr>\n        <td id=\"L3897\" class=\"blob-num js-line-number\" data-line-number=\"3897\"></td>\n        <td id=\"LC3897\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3898\" class=\"blob-num js-line-number\" data-line-number=\"3898\"></td>\n        <td id=\"LC3898\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3899\" class=\"blob-num js-line-number\" data-line-number=\"3899\"></td>\n        <td id=\"LC3899\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3900\" class=\"blob-num js-line-number\" data-line-number=\"3900\"></td>\n        <td id=\"LC3900\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3901\" class=\"blob-num js-line-number\" data-line-number=\"3901\"></td>\n        <td id=\"LC3901\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> paginator;</td>\n      </tr>\n      <tr>\n        <td id=\"L3902\" class=\"blob-num js-line-number\" data-line-number=\"3902\"></td>\n        <td id=\"LC3902\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L3903\" class=\"blob-num js-line-number\" data-line-number=\"3903\"></td>\n        <td id=\"LC3903\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L3904\" class=\"blob-num js-line-number\" data-line-number=\"3904\"></td>\n        <td id=\"LC3904\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3905\" class=\"blob-num js-line-number\" data-line-number=\"3905\"></td>\n        <td id=\"LC3905\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">update</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L3906\" class=\"blob-num js-line-number\" data-line-number=\"3906\"></td>\n        <td id=\"LC3906\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3907\" class=\"blob-num js-line-number\" data-line-number=\"3907\"></td>\n        <td id=\"LC3907\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3908\" class=\"blob-num js-line-number\" data-line-number=\"3908\"></td>\n        <td id=\"LC3908\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">defineMethods</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">defineMethods</span>(<span class=\"pl-smi\">svc</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3909\" class=\"blob-num js-line-number\" data-line-number=\"3909\"></td>\n        <td id=\"LC3909\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-smi\">svc</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">iterator</span>(<span class=\"pl-smi\">method</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3910\" class=\"blob-num js-line-number\" data-line-number=\"3910\"></td>\n        <td id=\"LC3910\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">svc</span>.<span class=\"pl-c1\">prototype</span>[method]) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3911\" class=\"blob-num js-line-number\" data-line-number=\"3911\"></td>\n        <td id=\"LC3911\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">svc</span>.<span class=\"pl-c1\">prototype</span>[method] <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3912\" class=\"blob-num js-line-number\" data-line-number=\"3912\"></td>\n        <td id=\"LC3912\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">makeRequest</span>(method, params, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L3913\" class=\"blob-num js-line-number\" data-line-number=\"3913\"></td>\n        <td id=\"LC3913\" class=\"blob-code blob-code-inner js-file-line\">      };</td>\n      </tr>\n      <tr>\n        <td id=\"L3914\" class=\"blob-num js-line-number\" data-line-number=\"3914\"></td>\n        <td id=\"LC3914\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L3915\" class=\"blob-num js-line-number\" data-line-number=\"3915\"></td>\n        <td id=\"LC3915\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3916\" class=\"blob-num js-line-number\" data-line-number=\"3916\"></td>\n        <td id=\"LC3916\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3917\" class=\"blob-num js-line-number\" data-line-number=\"3917\"></td>\n        <td id=\"LC3917\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3918\" class=\"blob-num js-line-number\" data-line-number=\"3918\"></td>\n        <td id=\"LC3918\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">defineService</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">defineService</span>(<span class=\"pl-smi\">serviceIdentifier</span>, <span class=\"pl-smi\">versions</span>, <span class=\"pl-smi\">features</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3919\" class=\"blob-num js-line-number\" data-line-number=\"3919\"></td>\n        <td id=\"LC3919\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>.<span class=\"pl-smi\">_serviceMap</span>[serviceIdentifier] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3920\" class=\"blob-num js-line-number\" data-line-number=\"3920\"></td>\n        <td id=\"LC3920\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-c1\">Array</span>.<span class=\"pl-en\">isArray</span>(versions)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3921\" class=\"blob-num js-line-number\" data-line-number=\"3921\"></td>\n        <td id=\"LC3921\" class=\"blob-code blob-code-inner js-file-line\">      features <span class=\"pl-k\">=</span> versions;</td>\n      </tr>\n      <tr>\n        <td id=\"L3922\" class=\"blob-num js-line-number\" data-line-number=\"3922\"></td>\n        <td id=\"LC3922\" class=\"blob-code blob-code-inner js-file-line\">      versions <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L3923\" class=\"blob-num js-line-number\" data-line-number=\"3923\"></td>\n        <td id=\"LC3923\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3924\" class=\"blob-num js-line-number\" data-line-number=\"3924\"></td>\n        <td id=\"LC3924\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3925\" class=\"blob-num js-line-number\" data-line-number=\"3925\"></td>\n        <td id=\"LC3925\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> svc <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>, features <span class=\"pl-k\">||</span> {});</td>\n      </tr>\n      <tr>\n        <td id=\"L3926\" class=\"blob-num js-line-number\" data-line-number=\"3926\"></td>\n        <td id=\"LC3926\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3927\" class=\"blob-num js-line-number\" data-line-number=\"3927\"></td>\n        <td id=\"LC3927\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> serviceIdentifier <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3928\" class=\"blob-num js-line-number\" data-line-number=\"3928\"></td>\n        <td id=\"LC3928\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>.<span class=\"pl-en\">addVersions</span>(svc, versions);</td>\n      </tr>\n      <tr>\n        <td id=\"L3929\" class=\"blob-num js-line-number\" data-line-number=\"3929\"></td>\n        <td id=\"LC3929\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3930\" class=\"blob-num js-line-number\" data-line-number=\"3930\"></td>\n        <td id=\"LC3930\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> identifier <span class=\"pl-k\">=</span> <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">serviceIdentifier</span> <span class=\"pl-k\">||</span> serviceIdentifier;</td>\n      </tr>\n      <tr>\n        <td id=\"L3931\" class=\"blob-num js-line-number\" data-line-number=\"3931\"></td>\n        <td id=\"LC3931\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">serviceIdentifier</span> <span class=\"pl-k\">=</span> identifier;</td>\n      </tr>\n      <tr>\n        <td id=\"L3932\" class=\"blob-num js-line-number\" data-line-number=\"3932\"></td>\n        <td id=\"LC3932\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> { <span class=\"pl-c\">// defineService called with an API</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3933\" class=\"blob-num js-line-number\" data-line-number=\"3933\"></td>\n        <td id=\"LC3933\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">svc</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">api</span> <span class=\"pl-k\">=</span> serviceIdentifier;</td>\n      </tr>\n      <tr>\n        <td id=\"L3934\" class=\"blob-num js-line-number\" data-line-number=\"3934\"></td>\n        <td id=\"LC3934\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>.<span class=\"pl-en\">defineMethods</span>(svc);</td>\n      </tr>\n      <tr>\n        <td id=\"L3935\" class=\"blob-num js-line-number\" data-line-number=\"3935\"></td>\n        <td id=\"LC3935\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3936\" class=\"blob-num js-line-number\" data-line-number=\"3936\"></td>\n        <td id=\"LC3936\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3937\" class=\"blob-num js-line-number\" data-line-number=\"3937\"></td>\n        <td id=\"LC3937\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> svc;</td>\n      </tr>\n      <tr>\n        <td id=\"L3938\" class=\"blob-num js-line-number\" data-line-number=\"3938\"></td>\n        <td id=\"LC3938\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3939\" class=\"blob-num js-line-number\" data-line-number=\"3939\"></td>\n        <td id=\"LC3939\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3940\" class=\"blob-num js-line-number\" data-line-number=\"3940\"></td>\n        <td id=\"LC3940\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3941\" class=\"blob-num js-line-number\" data-line-number=\"3941\"></td>\n        <td id=\"LC3941\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">addVersions</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addVersions</span>(<span class=\"pl-smi\">svc</span>, <span class=\"pl-smi\">versions</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3942\" class=\"blob-num js-line-number\" data-line-number=\"3942\"></td>\n        <td id=\"LC3942\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-c1\">Array</span>.<span class=\"pl-en\">isArray</span>(versions)) versions <span class=\"pl-k\">=</span> [versions];</td>\n      </tr>\n      <tr>\n        <td id=\"L3943\" class=\"blob-num js-line-number\" data-line-number=\"3943\"></td>\n        <td id=\"LC3943\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3944\" class=\"blob-num js-line-number\" data-line-number=\"3944\"></td>\n        <td id=\"LC3944\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">services</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">services</span> <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L3945\" class=\"blob-num js-line-number\" data-line-number=\"3945\"></td>\n        <td id=\"LC3945\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">versions</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3946\" class=\"blob-num js-line-number\" data-line-number=\"3946\"></td>\n        <td id=\"LC3946\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">services</span>[versions[i]] <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3947\" class=\"blob-num js-line-number\" data-line-number=\"3947\"></td>\n        <td id=\"LC3947\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">services</span>[versions[i]] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L3948\" class=\"blob-num js-line-number\" data-line-number=\"3948\"></td>\n        <td id=\"LC3948\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3949\" class=\"blob-num js-line-number\" data-line-number=\"3949\"></td>\n        <td id=\"LC3949\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3950\" class=\"blob-num js-line-number\" data-line-number=\"3950\"></td>\n        <td id=\"LC3950\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3951\" class=\"blob-num js-line-number\" data-line-number=\"3951\"></td>\n        <td id=\"LC3951\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">apiVersions</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(<span class=\"pl-smi\">svc</span>.<span class=\"pl-smi\">services</span>).<span class=\"pl-c1\">sort</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3952\" class=\"blob-num js-line-number\" data-line-number=\"3952\"></td>\n        <td id=\"LC3952\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3953\" class=\"blob-num js-line-number\" data-line-number=\"3953\"></td>\n        <td id=\"LC3953\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3954\" class=\"blob-num js-line-number\" data-line-number=\"3954\"></td>\n        <td id=\"LC3954\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3955\" class=\"blob-num js-line-number\" data-line-number=\"3955\"></td>\n        <td id=\"LC3955\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">defineServiceApi</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">defineServiceApi</span>(<span class=\"pl-smi\">superclass</span>, <span class=\"pl-smi\">version</span>, <span class=\"pl-smi\">apiConfig</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3956\" class=\"blob-num js-line-number\" data-line-number=\"3956\"></td>\n        <td id=\"LC3956\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> svc <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>(superclass, {</td>\n      </tr>\n      <tr>\n        <td id=\"L3957\" class=\"blob-num js-line-number\" data-line-number=\"3957\"></td>\n        <td id=\"LC3957\" class=\"blob-code blob-code-inner js-file-line\">      serviceIdentifier<span class=\"pl-k\">:</span> <span class=\"pl-smi\">superclass</span>.<span class=\"pl-smi\">serviceIdentifier</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3958\" class=\"blob-num js-line-number\" data-line-number=\"3958\"></td>\n        <td id=\"LC3958\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L3959\" class=\"blob-num js-line-number\" data-line-number=\"3959\"></td>\n        <td id=\"LC3959\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3960\" class=\"blob-num js-line-number\" data-line-number=\"3960\"></td>\n        <td id=\"LC3960\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">setApi</span>(<span class=\"pl-smi\">api</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3961\" class=\"blob-num js-line-number\" data-line-number=\"3961\"></td>\n        <td id=\"LC3961\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">isApi</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3962\" class=\"blob-num js-line-number\" data-line-number=\"3962\"></td>\n        <td id=\"LC3962\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">svc</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">api</span> <span class=\"pl-k\">=</span> api;</td>\n      </tr>\n      <tr>\n        <td id=\"L3963\" class=\"blob-num js-line-number\" data-line-number=\"3963\"></td>\n        <td id=\"LC3963\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3964\" class=\"blob-num js-line-number\" data-line-number=\"3964\"></td>\n        <td id=\"LC3964\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">svc</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">api</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Api</span>(api);</td>\n      </tr>\n      <tr>\n        <td id=\"L3965\" class=\"blob-num js-line-number\" data-line-number=\"3965\"></td>\n        <td id=\"LC3965\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3966\" class=\"blob-num js-line-number\" data-line-number=\"3966\"></td>\n        <td id=\"LC3966\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3967\" class=\"blob-num js-line-number\" data-line-number=\"3967\"></td>\n        <td id=\"LC3967\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3968\" class=\"blob-num js-line-number\" data-line-number=\"3968\"></td>\n        <td id=\"LC3968\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> version <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3969\" class=\"blob-num js-line-number\" data-line-number=\"3969\"></td>\n        <td id=\"LC3969\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (apiConfig) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3970\" class=\"blob-num js-line-number\" data-line-number=\"3970\"></td>\n        <td id=\"LC3970\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">setApi</span>(apiConfig);</td>\n      </tr>\n      <tr>\n        <td id=\"L3971\" class=\"blob-num js-line-number\" data-line-number=\"3971\"></td>\n        <td id=\"LC3971\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3972\" class=\"blob-num js-line-number\" data-line-number=\"3972\"></td>\n        <td id=\"LC3972\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3973\" class=\"blob-num js-line-number\" data-line-number=\"3973\"></td>\n        <td id=\"LC3973\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">setApi</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-en\">apiLoader</span>(<span class=\"pl-smi\">superclass</span>.<span class=\"pl-smi\">serviceIdentifier</span>, version));</td>\n      </tr>\n      <tr>\n        <td id=\"L3974\" class=\"blob-num js-line-number\" data-line-number=\"3974\"></td>\n        <td id=\"LC3974\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">catch</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3975\" class=\"blob-num js-line-number\" data-line-number=\"3975\"></td>\n        <td id=\"LC3975\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">throw</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(err, {</td>\n      </tr>\n      <tr>\n        <td id=\"L3976\" class=\"blob-num js-line-number\" data-line-number=\"3976\"></td>\n        <td id=\"LC3976\" class=\"blob-code blob-code-inner js-file-line\">            message<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Could not find API configuration <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L3977\" class=\"blob-num js-line-number\" data-line-number=\"3977\"></td>\n        <td id=\"LC3977\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-smi\">superclass</span>.<span class=\"pl-smi\">serviceIdentifier</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>-<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> version</td>\n      </tr>\n      <tr>\n        <td id=\"L3978\" class=\"blob-num js-line-number\" data-line-number=\"3978\"></td>\n        <td id=\"LC3978\" class=\"blob-code blob-code-inner js-file-line\">          });</td>\n      </tr>\n      <tr>\n        <td id=\"L3979\" class=\"blob-num js-line-number\" data-line-number=\"3979\"></td>\n        <td id=\"LC3979\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L3980\" class=\"blob-num js-line-number\" data-line-number=\"3980\"></td>\n        <td id=\"LC3980\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3981\" class=\"blob-num js-line-number\" data-line-number=\"3981\"></td>\n        <td id=\"LC3981\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">superclass</span>.<span class=\"pl-smi\">services</span>.<span class=\"pl-en\">hasOwnProperty</span>(version)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3982\" class=\"blob-num js-line-number\" data-line-number=\"3982\"></td>\n        <td id=\"LC3982\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">superclass</span>.<span class=\"pl-smi\">apiVersions</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">superclass</span>.<span class=\"pl-smi\">apiVersions</span>.<span class=\"pl-c1\">concat</span>(version).<span class=\"pl-c1\">sort</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L3983\" class=\"blob-num js-line-number\" data-line-number=\"3983\"></td>\n        <td id=\"LC3983\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L3984\" class=\"blob-num js-line-number\" data-line-number=\"3984\"></td>\n        <td id=\"LC3984\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">superclass</span>.<span class=\"pl-smi\">services</span>[version] <span class=\"pl-k\">=</span> svc;</td>\n      </tr>\n      <tr>\n        <td id=\"L3985\" class=\"blob-num js-line-number\" data-line-number=\"3985\"></td>\n        <td id=\"LC3985\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L3986\" class=\"blob-num js-line-number\" data-line-number=\"3986\"></td>\n        <td id=\"LC3986\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">setApi</span>(version);</td>\n      </tr>\n      <tr>\n        <td id=\"L3987\" class=\"blob-num js-line-number\" data-line-number=\"3987\"></td>\n        <td id=\"LC3987\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L3988\" class=\"blob-num js-line-number\" data-line-number=\"3988\"></td>\n        <td id=\"LC3988\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3989\" class=\"blob-num js-line-number\" data-line-number=\"3989\"></td>\n        <td id=\"LC3989\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>.<span class=\"pl-en\">defineMethods</span>(svc);</td>\n      </tr>\n      <tr>\n        <td id=\"L3990\" class=\"blob-num js-line-number\" data-line-number=\"3990\"></td>\n        <td id=\"LC3990\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> svc;</td>\n      </tr>\n      <tr>\n        <td id=\"L3991\" class=\"blob-num js-line-number\" data-line-number=\"3991\"></td>\n        <td id=\"LC3991\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3992\" class=\"blob-num js-line-number\" data-line-number=\"3992\"></td>\n        <td id=\"LC3992\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3993\" class=\"blob-num js-line-number\" data-line-number=\"3993\"></td>\n        <td id=\"LC3993\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3994\" class=\"blob-num js-line-number\" data-line-number=\"3994\"></td>\n        <td id=\"LC3994\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">hasService</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">identifier</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L3995\" class=\"blob-num js-line-number\" data-line-number=\"3995\"></td>\n        <td id=\"LC3995\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Service</span>.<span class=\"pl-smi\">_serviceMap</span>.<span class=\"pl-en\">hasOwnProperty</span>(identifier);</td>\n      </tr>\n      <tr>\n        <td id=\"L3996\" class=\"blob-num js-line-number\" data-line-number=\"3996\"></td>\n        <td id=\"LC3996\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L3997\" class=\"blob-num js-line-number\" data-line-number=\"3997\"></td>\n        <td id=\"LC3997\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3998\" class=\"blob-num js-line-number\" data-line-number=\"3998\"></td>\n        <td id=\"LC3998\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L3999\" class=\"blob-num js-line-number\" data-line-number=\"3999\"></td>\n        <td id=\"LC3999\" class=\"blob-code blob-code-inner js-file-line\">  _serviceMap<span class=\"pl-k\">:</span> {}</td>\n      </tr>\n      <tr>\n        <td id=\"L4000\" class=\"blob-num js-line-number\" data-line-number=\"4000\"></td>\n        <td id=\"LC4000\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L4001\" class=\"blob-num js-line-number\" data-line-number=\"4001\"></td>\n        <td id=\"LC4001\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4002\" class=\"blob-num js-line-number\" data-line-number=\"4002\"></td>\n        <td id=\"LC4002\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./model/api<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">15</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./region_config<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">28</span>}],<span class=\"pl-c1\">35</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L4003\" class=\"blob-num js-line-number\" data-line-number=\"4003\"></td>\n        <td id=\"LC4003\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4004\" class=\"blob-num js-line-number\" data-line-number=\"4004\"></td>\n        <td id=\"LC4004\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4005\" class=\"blob-num js-line-number\" data-line-number=\"4005\"></td>\n        <td id=\"LC4005\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">update</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-c1\">STS</span>.<span class=\"pl-c1\">prototype</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L4006\" class=\"blob-num js-line-number\" data-line-number=\"4006\"></td>\n        <td id=\"LC4006\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4007\" class=\"blob-num js-line-number\" data-line-number=\"4007\"></td>\n        <td id=\"LC4007\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">credentialsFrom</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">credentialsFrom</span>(<span class=\"pl-smi\">data</span>, <span class=\"pl-smi\">credentials</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4008\" class=\"blob-num js-line-number\" data-line-number=\"4008\"></td>\n        <td id=\"LC4008\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>data) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4009\" class=\"blob-num js-line-number\" data-line-number=\"4009\"></td>\n        <td id=\"LC4009\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>credentials) credentials <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">AWS.TemporaryCredentials</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4010\" class=\"blob-num js-line-number\" data-line-number=\"4010\"></td>\n        <td id=\"LC4010\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">expired</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4011\" class=\"blob-num js-line-number\" data-line-number=\"4011\"></td>\n        <td id=\"LC4011\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-smi\">AccessKeyId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4012\" class=\"blob-num js-line-number\" data-line-number=\"4012\"></td>\n        <td id=\"LC4012\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">secretAccessKey</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-smi\">SecretAccessKey</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4013\" class=\"blob-num js-line-number\" data-line-number=\"4013\"></td>\n        <td id=\"LC4013\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-smi\">SessionToken</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4014\" class=\"blob-num js-line-number\" data-line-number=\"4014\"></td>\n        <td id=\"LC4014\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">expireTime</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">Credentials</span>.<span class=\"pl-smi\">Expiration</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4015\" class=\"blob-num js-line-number\" data-line-number=\"4015\"></td>\n        <td id=\"LC4015\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> credentials;</td>\n      </tr>\n      <tr>\n        <td id=\"L4016\" class=\"blob-num js-line-number\" data-line-number=\"4016\"></td>\n        <td id=\"LC4016\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4017\" class=\"blob-num js-line-number\" data-line-number=\"4017\"></td>\n        <td id=\"LC4017\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4018\" class=\"blob-num js-line-number\" data-line-number=\"4018\"></td>\n        <td id=\"LC4018\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assumeRoleWithWebIdentity</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">assumeRoleWithWebIdentity</span>(<span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4019\" class=\"blob-num js-line-number\" data-line-number=\"4019\"></td>\n        <td id=\"LC4019\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">makeUnauthenticatedRequest</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>assumeRoleWithWebIdentity<span class=\"pl-pds\">&#39;</span></span>, params, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L4020\" class=\"blob-num js-line-number\" data-line-number=\"4020\"></td>\n        <td id=\"LC4020\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4021\" class=\"blob-num js-line-number\" data-line-number=\"4021\"></td>\n        <td id=\"LC4021\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4022\" class=\"blob-num js-line-number\" data-line-number=\"4022\"></td>\n        <td id=\"LC4022\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assumeRoleWithSAML</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">assumeRoleWithSAML</span>(<span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4023\" class=\"blob-num js-line-number\" data-line-number=\"4023\"></td>\n        <td id=\"LC4023\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">makeUnauthenticatedRequest</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>assumeRoleWithSAML<span class=\"pl-pds\">&#39;</span></span>, params, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L4024\" class=\"blob-num js-line-number\" data-line-number=\"4024\"></td>\n        <td id=\"LC4024\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4025\" class=\"blob-num js-line-number\" data-line-number=\"4025\"></td>\n        <td id=\"LC4025\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L4026\" class=\"blob-num js-line-number\" data-line-number=\"4026\"></td>\n        <td id=\"LC4026\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4027\" class=\"blob-num js-line-number\" data-line-number=\"4027\"></td>\n        <td id=\"LC4027\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">36</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L4028\" class=\"blob-num js-line-number\" data-line-number=\"4028\"></td>\n        <td id=\"LC4028\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4029\" class=\"blob-num js-line-number\" data-line-number=\"4029\"></td>\n        <td id=\"LC4029\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4030\" class=\"blob-num js-line-number\" data-line-number=\"4030\"></td>\n        <td id=\"LC4030\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4031\" class=\"blob-num js-line-number\" data-line-number=\"4031\"></td>\n        <td id=\"LC4031\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4032\" class=\"blob-num js-line-number\" data-line-number=\"4032\"></td>\n        <td id=\"LC4032\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> expiresHeader <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>presigned-expires<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4033\" class=\"blob-num js-line-number\" data-line-number=\"4033\"></td>\n        <td id=\"LC4033\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4034\" class=\"blob-num js-line-number\" data-line-number=\"4034\"></td>\n        <td id=\"LC4034\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4035\" class=\"blob-num js-line-number\" data-line-number=\"4035\"></td>\n        <td id=\"LC4035\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">signedUrlBuilder</span>(<span class=\"pl-smi\">request</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4036\" class=\"blob-num js-line-number\" data-line-number=\"4036\"></td>\n        <td id=\"LC4036\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> expires <span class=\"pl-k\">=</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[expiresHeader];</td>\n      </tr>\n      <tr>\n        <td id=\"L4037\" class=\"blob-num js-line-number\" data-line-number=\"4037\"></td>\n        <td id=\"LC4037\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4038\" class=\"blob-num js-line-number\" data-line-number=\"4038\"></td>\n        <td id=\"LC4038\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>User-Agent<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4039\" class=\"blob-num js-line-number\" data-line-number=\"4039\"></td>\n        <td id=\"LC4039\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-User-Agent<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4040\" class=\"blob-num js-line-number\" data-line-number=\"4040\"></td>\n        <td id=\"LC4040\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4041\" class=\"blob-num js-line-number\" data-line-number=\"4041\"></td>\n        <td id=\"LC4041\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">getSignerClass</span>() <span class=\"pl-k\">===</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V4</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4042\" class=\"blob-num js-line-number\" data-line-number=\"4042\"></td>\n        <td id=\"LC4042\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (expires <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">604800</span>) { <span class=\"pl-c\">// one week expiry is invalid</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4043\" class=\"blob-num js-line-number\" data-line-number=\"4043\"></td>\n        <td id=\"LC4043\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> message <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Presigning does not support expiry time greater <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4044\" class=\"blob-num js-line-number\" data-line-number=\"4044\"></td>\n        <td id=\"LC4044\" class=\"blob-code blob-code-inner js-file-line\">                    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>than a week with SigV4 signing.<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4045\" class=\"blob-num js-line-number\" data-line-number=\"4045\"></td>\n        <td id=\"LC4045\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), {</td>\n      </tr>\n      <tr>\n        <td id=\"L4046\" class=\"blob-num js-line-number\" data-line-number=\"4046\"></td>\n        <td id=\"LC4046\" class=\"blob-code blob-code-inner js-file-line\">        code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>InvalidExpiryTime<span class=\"pl-pds\">&#39;</span></span>, message<span class=\"pl-k\">:</span> message, retryable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4047\" class=\"blob-num js-line-number\" data-line-number=\"4047\"></td>\n        <td id=\"LC4047\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L4048\" class=\"blob-num js-line-number\" data-line-number=\"4048\"></td>\n        <td id=\"LC4048\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4049\" class=\"blob-num js-line-number\" data-line-number=\"4049\"></td>\n        <td id=\"LC4049\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[expiresHeader] <span class=\"pl-k\">=</span> expires;</td>\n      </tr>\n      <tr>\n        <td id=\"L4050\" class=\"blob-num js-line-number\" data-line-number=\"4050\"></td>\n        <td id=\"LC4050\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-en\">getSignerClass</span>() <span class=\"pl-k\">===</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">S3</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4051\" class=\"blob-num js-line-number\" data-line-number=\"4051\"></td>\n        <td id=\"LC4051\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[expiresHeader] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">parseInt</span>(</td>\n      </tr>\n      <tr>\n        <td id=\"L4052\" class=\"blob-num js-line-number\" data-line-number=\"4052\"></td>\n        <td id=\"LC4052\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-en\">unixTimestamp</span>() <span class=\"pl-k\">+</span> expires, <span class=\"pl-c1\">10</span>).<span class=\"pl-c1\">toString</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4053\" class=\"blob-num js-line-number\" data-line-number=\"4053\"></td>\n        <td id=\"LC4053\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4054\" class=\"blob-num js-line-number\" data-line-number=\"4054\"></td>\n        <td id=\"LC4054\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), {</td>\n      </tr>\n      <tr>\n        <td id=\"L4055\" class=\"blob-num js-line-number\" data-line-number=\"4055\"></td>\n        <td id=\"LC4055\" class=\"blob-code blob-code-inner js-file-line\">      message<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Presigning only supports S3 or SigV4 signing.<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4056\" class=\"blob-num js-line-number\" data-line-number=\"4056\"></td>\n        <td id=\"LC4056\" class=\"blob-code blob-code-inner js-file-line\">      code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>UnsupportedSigner<span class=\"pl-pds\">&#39;</span></span>, retryable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4057\" class=\"blob-num js-line-number\" data-line-number=\"4057\"></td>\n        <td id=\"LC4057\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4058\" class=\"blob-num js-line-number\" data-line-number=\"4058\"></td>\n        <td id=\"LC4058\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4059\" class=\"blob-num js-line-number\" data-line-number=\"4059\"></td>\n        <td id=\"LC4059\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L4060\" class=\"blob-num js-line-number\" data-line-number=\"4060\"></td>\n        <td id=\"LC4060\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4061\" class=\"blob-num js-line-number\" data-line-number=\"4061\"></td>\n        <td id=\"LC4061\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4062\" class=\"blob-num js-line-number\" data-line-number=\"4062\"></td>\n        <td id=\"LC4062\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">signedUrlSigner</span>(<span class=\"pl-smi\">request</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4063\" class=\"blob-num js-line-number\" data-line-number=\"4063\"></td>\n        <td id=\"LC4063\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> endpoint <span class=\"pl-k\">=</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">endpoint</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4064\" class=\"blob-num js-line-number\" data-line-number=\"4064\"></td>\n        <td id=\"LC4064\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> parsedUrl <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">urlParse</span>(<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">path</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4065\" class=\"blob-num js-line-number\" data-line-number=\"4065\"></td>\n        <td id=\"LC4065\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> queryParams <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L4066\" class=\"blob-num js-line-number\" data-line-number=\"4066\"></td>\n        <td id=\"LC4066\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4067\" class=\"blob-num js-line-number\" data-line-number=\"4067\"></td>\n        <td id=\"LC4067\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">parsedUrl</span>.<span class=\"pl-smi\">search</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4068\" class=\"blob-num js-line-number\" data-line-number=\"4068\"></td>\n        <td id=\"LC4068\" class=\"blob-code blob-code-inner js-file-line\">    queryParams <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">queryStringParse</span>(<span class=\"pl-smi\">parsedUrl</span>.<span class=\"pl-smi\">search</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">1</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L4069\" class=\"blob-num js-line-number\" data-line-number=\"4069\"></td>\n        <td id=\"LC4069\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4070\" class=\"blob-num js-line-number\" data-line-number=\"4070\"></td>\n        <td id=\"LC4070\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4071\" class=\"blob-num js-line-number\" data-line-number=\"4071\"></td>\n        <td id=\"LC4071\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4072\" class=\"blob-num js-line-number\" data-line-number=\"4072\"></td>\n        <td id=\"LC4072\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (key <span class=\"pl-k\">===</span> expiresHeader) key <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Expires<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4073\" class=\"blob-num js-line-number\" data-line-number=\"4073\"></td>\n        <td id=\"LC4073\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>x-amz-meta-<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4074\" class=\"blob-num js-line-number\" data-line-number=\"4074\"></td>\n        <td id=\"LC4074\" class=\"blob-code blob-code-inner js-file-line\">      key <span class=\"pl-k\">=</span> <span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">toLowerCase</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4075\" class=\"blob-num js-line-number\" data-line-number=\"4075\"></td>\n        <td id=\"LC4075\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4076\" class=\"blob-num js-line-number\" data-line-number=\"4076\"></td>\n        <td id=\"LC4076\" class=\"blob-code blob-code-inner js-file-line\">    queryParams[key] <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L4077\" class=\"blob-num js-line-number\" data-line-number=\"4077\"></td>\n        <td id=\"LC4077\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L4078\" class=\"blob-num js-line-number\" data-line-number=\"4078\"></td>\n        <td id=\"LC4078\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[expiresHeader];</td>\n      </tr>\n      <tr>\n        <td id=\"L4079\" class=\"blob-num js-line-number\" data-line-number=\"4079\"></td>\n        <td id=\"LC4079\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4080\" class=\"blob-num js-line-number\" data-line-number=\"4080\"></td>\n        <td id=\"LC4080\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> auth <span class=\"pl-k\">=</span> queryParams[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Authorization<span class=\"pl-pds\">&#39;</span></span>].<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4081\" class=\"blob-num js-line-number\" data-line-number=\"4081\"></td>\n        <td id=\"LC4081\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (auth[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AWS<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4082\" class=\"blob-num js-line-number\" data-line-number=\"4082\"></td>\n        <td id=\"LC4082\" class=\"blob-code blob-code-inner js-file-line\">    auth <span class=\"pl-k\">=</span> auth[<span class=\"pl-c1\">1</span>].<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4083\" class=\"blob-num js-line-number\" data-line-number=\"4083\"></td>\n        <td id=\"LC4083\" class=\"blob-code blob-code-inner js-file-line\">    queryParams[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AWSAccessKeyId<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> auth[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4084\" class=\"blob-num js-line-number\" data-line-number=\"4084\"></td>\n        <td id=\"LC4084\" class=\"blob-code blob-code-inner js-file-line\">    queryParams[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Signature<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> auth[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4085\" class=\"blob-num js-line-number\" data-line-number=\"4085\"></td>\n        <td id=\"LC4085\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (auth[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AWS4-HMAC-SHA256<span class=\"pl-pds\">&#39;</span></span>) { <span class=\"pl-c\">// SigV4 signing</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4086\" class=\"blob-num js-line-number\" data-line-number=\"4086\"></td>\n        <td id=\"LC4086\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">auth</span>.<span class=\"pl-c1\">shift</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4087\" class=\"blob-num js-line-number\" data-line-number=\"4087\"></td>\n        <td id=\"LC4087\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> rest <span class=\"pl-k\">=</span> <span class=\"pl-smi\">auth</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4088\" class=\"blob-num js-line-number\" data-line-number=\"4088\"></td>\n        <td id=\"LC4088\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> signature <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>Signature=(<span class=\"pl-c1\">.</span><span class=\"pl-k\">*?</span>)(?:,<span class=\"pl-k\">|</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">|</span><span class=\"pl-cce\">\\r</span><span class=\"pl-k\">?</span><span class=\"pl-cce\">\\n</span><span class=\"pl-k\">|</span><span class=\"pl-k\">$</span>)<span class=\"pl-pds\">/</span></span>)[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4089\" class=\"blob-num js-line-number\" data-line-number=\"4089\"></td>\n        <td id=\"LC4089\" class=\"blob-code blob-code-inner js-file-line\">    queryParams[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Signature<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> signature;</td>\n      </tr>\n      <tr>\n        <td id=\"L4090\" class=\"blob-num js-line-number\" data-line-number=\"4090\"></td>\n        <td id=\"LC4090\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">delete</span> queryParams[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Expires<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4091\" class=\"blob-num js-line-number\" data-line-number=\"4091\"></td>\n        <td id=\"LC4091\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4092\" class=\"blob-num js-line-number\" data-line-number=\"4092\"></td>\n        <td id=\"LC4092\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">delete</span> queryParams[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Authorization<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4093\" class=\"blob-num js-line-number\" data-line-number=\"4093\"></td>\n        <td id=\"LC4093\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">delete</span> queryParams[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Host<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4094\" class=\"blob-num js-line-number\" data-line-number=\"4094\"></td>\n        <td id=\"LC4094\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4095\" class=\"blob-num js-line-number\" data-line-number=\"4095\"></td>\n        <td id=\"LC4095\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">endpoint</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parsedUrl</span>.<span class=\"pl-c1\">pathname</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4096\" class=\"blob-num js-line-number\" data-line-number=\"4096\"></td>\n        <td id=\"LC4096\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">endpoint</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">queryParamsToString</span>(queryParams);</td>\n      </tr>\n      <tr>\n        <td id=\"L4097\" class=\"blob-num js-line-number\" data-line-number=\"4097\"></td>\n        <td id=\"LC4097\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L4098\" class=\"blob-num js-line-number\" data-line-number=\"4098\"></td>\n        <td id=\"LC4098\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4099\" class=\"blob-num js-line-number\" data-line-number=\"4099\"></td>\n        <td id=\"LC4099\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4100\" class=\"blob-num js-line-number\" data-line-number=\"4100\"></td>\n        <td id=\"LC4100\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">Presign</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L4101\" class=\"blob-num js-line-number\" data-line-number=\"4101\"></td>\n        <td id=\"LC4101\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4102\" class=\"blob-num js-line-number\" data-line-number=\"4102\"></td>\n        <td id=\"LC4102\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">sign</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">sign</span>(<span class=\"pl-smi\">request</span>, <span class=\"pl-smi\">expireTime</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4103\" class=\"blob-num js-line-number\" data-line-number=\"4103\"></td>\n        <td id=\"LC4103\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-c1\">headers</span>[expiresHeader] <span class=\"pl-k\">=</span> expireTime <span class=\"pl-k\">||</span> <span class=\"pl-c1\">3600</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4104\" class=\"blob-num js-line-number\" data-line-number=\"4104\"></td>\n        <td id=\"LC4104\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>build<span class=\"pl-pds\">&#39;</span></span>, signedUrlBuilder);</td>\n      </tr>\n      <tr>\n        <td id=\"L4105\" class=\"blob-num js-line-number\" data-line-number=\"4105\"></td>\n        <td id=\"LC4105\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sign<span class=\"pl-pds\">&#39;</span></span>, signedUrlSigner);</td>\n      </tr>\n      <tr>\n        <td id=\"L4106\" class=\"blob-num js-line-number\" data-line-number=\"4106\"></td>\n        <td id=\"LC4106\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">removeListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterBuild<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4107\" class=\"blob-num js-line-number\" data-line-number=\"4107\"></td>\n        <td id=\"LC4107\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Core</span>.<span class=\"pl-c1\">SET_CONTENT_LENGTH</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4108\" class=\"blob-num js-line-number\" data-line-number=\"4108\"></td>\n        <td id=\"LC4108\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">removeListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>afterBuild<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4109\" class=\"blob-num js-line-number\" data-line-number=\"4109\"></td>\n        <td id=\"LC4109\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">EventListeners</span>.<span class=\"pl-smi\">Core</span>.<span class=\"pl-c1\">COMPUTE_SHA256</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4110\" class=\"blob-num js-line-number\" data-line-number=\"4110\"></td>\n        <td id=\"LC4110\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4111\" class=\"blob-num js-line-number\" data-line-number=\"4111\"></td>\n        <td id=\"LC4111\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>beforePresign<span class=\"pl-pds\">&#39;</span></span>, [request]);</td>\n      </tr>\n      <tr>\n        <td id=\"L4112\" class=\"blob-num js-line-number\" data-line-number=\"4112\"></td>\n        <td id=\"LC4112\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4113\" class=\"blob-num js-line-number\" data-line-number=\"4113\"></td>\n        <td id=\"LC4113\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (callback) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4114\" class=\"blob-num js-line-number\" data-line-number=\"4114\"></td>\n        <td id=\"LC4114\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">build</span>(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4115\" class=\"blob-num js-line-number\" data-line-number=\"4115\"></td>\n        <td id=\"LC4115\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span>) <span class=\"pl-en\">callback</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4116\" class=\"blob-num js-line-number\" data-line-number=\"4116\"></td>\n        <td id=\"LC4116\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4117\" class=\"blob-num js-line-number\" data-line-number=\"4117\"></td>\n        <td id=\"LC4117\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">callback</span>(<span class=\"pl-c1\">null</span>, <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">urlFormat</span>(<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">endpoint</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L4118\" class=\"blob-num js-line-number\" data-line-number=\"4118\"></td>\n        <td id=\"LC4118\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L4119\" class=\"blob-num js-line-number\" data-line-number=\"4119\"></td>\n        <td id=\"LC4119\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L4120\" class=\"blob-num js-line-number\" data-line-number=\"4120\"></td>\n        <td id=\"LC4120\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4121\" class=\"blob-num js-line-number\" data-line-number=\"4121\"></td>\n        <td id=\"LC4121\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">request</span>.<span class=\"pl-en\">build</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4122\" class=\"blob-num js-line-number\" data-line-number=\"4122\"></td>\n        <td id=\"LC4122\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span>) <span class=\"pl-k\">throw</span> <span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">response</span>.<span class=\"pl-smi\">error</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4123\" class=\"blob-num js-line-number\" data-line-number=\"4123\"></td>\n        <td id=\"LC4123\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">urlFormat</span>(<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">httpRequest</span>.<span class=\"pl-smi\">endpoint</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4124\" class=\"blob-num js-line-number\" data-line-number=\"4124\"></td>\n        <td id=\"LC4124\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4125\" class=\"blob-num js-line-number\" data-line-number=\"4125\"></td>\n        <td id=\"LC4125\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4126\" class=\"blob-num js-line-number\" data-line-number=\"4126\"></td>\n        <td id=\"LC4126\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L4127\" class=\"blob-num js-line-number\" data-line-number=\"4127\"></td>\n        <td id=\"LC4127\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4128\" class=\"blob-num js-line-number\" data-line-number=\"4128\"></td>\n        <td id=\"LC4128\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">Presign</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4129\" class=\"blob-num js-line-number\" data-line-number=\"4129\"></td>\n        <td id=\"LC4129\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4130\" class=\"blob-num js-line-number\" data-line-number=\"4130\"></td>\n        <td id=\"LC4130\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">37</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L4131\" class=\"blob-num js-line-number\" data-line-number=\"4131\"></td>\n        <td id=\"LC4131\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4132\" class=\"blob-num js-line-number\" data-line-number=\"4132\"></td>\n        <td id=\"LC4132\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4133\" class=\"blob-num js-line-number\" data-line-number=\"4133\"></td>\n        <td id=\"LC4133\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4134\" class=\"blob-num js-line-number\" data-line-number=\"4134\"></td>\n        <td id=\"LC4134\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4135\" class=\"blob-num js-line-number\" data-line-number=\"4135\"></td>\n        <td id=\"LC4135\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">RequestSigner</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>({</td>\n      </tr>\n      <tr>\n        <td id=\"L4136\" class=\"blob-num js-line-number\" data-line-number=\"4136\"></td>\n        <td id=\"LC4136\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">RequestSigner</span>(<span class=\"pl-smi\">request</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4137\" class=\"blob-num js-line-number\" data-line-number=\"4137\"></td>\n        <td id=\"LC4137\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span> <span class=\"pl-k\">=</span> request;</td>\n      </tr>\n      <tr>\n        <td id=\"L4138\" class=\"blob-num js-line-number\" data-line-number=\"4138\"></td>\n        <td id=\"LC4138\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4139\" class=\"blob-num js-line-number\" data-line-number=\"4139\"></td>\n        <td id=\"LC4139\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L4140\" class=\"blob-num js-line-number\" data-line-number=\"4140\"></td>\n        <td id=\"LC4140\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4141\" class=\"blob-num js-line-number\" data-line-number=\"4141\"></td>\n        <td id=\"LC4141\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">RequestSigner</span>.<span class=\"pl-en\">getVersion</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">getVersion</span>(<span class=\"pl-smi\">version</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4142\" class=\"blob-num js-line-number\" data-line-number=\"4142\"></td>\n        <td id=\"LC4142\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (version) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4143\" class=\"blob-num js-line-number\" data-line-number=\"4143\"></td>\n        <td id=\"LC4143\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>v2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V2</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4144\" class=\"blob-num js-line-number\" data-line-number=\"4144\"></td>\n        <td id=\"LC4144\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>v3<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V3</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4145\" class=\"blob-num js-line-number\" data-line-number=\"4145\"></td>\n        <td id=\"LC4145\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>v4<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V4</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4146\" class=\"blob-num js-line-number\" data-line-number=\"4146\"></td>\n        <td id=\"LC4146\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>s3<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">S3</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4147\" class=\"blob-num js-line-number\" data-line-number=\"4147\"></td>\n        <td id=\"LC4147\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>v3https<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">V3Https</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4148\" class=\"blob-num js-line-number\" data-line-number=\"4148\"></td>\n        <td id=\"LC4148\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4149\" class=\"blob-num js-line-number\" data-line-number=\"4149\"></td>\n        <td id=\"LC4149\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Unknown signing version <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> version);</td>\n      </tr>\n      <tr>\n        <td id=\"L4150\" class=\"blob-num js-line-number\" data-line-number=\"4150\"></td>\n        <td id=\"LC4150\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L4151\" class=\"blob-num js-line-number\" data-line-number=\"4151\"></td>\n        <td id=\"LC4151\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4152\" class=\"blob-num js-line-number\" data-line-number=\"4152\"></td>\n        <td id=\"LC4152\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./v2<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4153\" class=\"blob-num js-line-number\" data-line-number=\"4153\"></td>\n        <td id=\"LC4153\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./v3<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4154\" class=\"blob-num js-line-number\" data-line-number=\"4154\"></td>\n        <td id=\"LC4154\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./v3https<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4155\" class=\"blob-num js-line-number\" data-line-number=\"4155\"></td>\n        <td id=\"LC4155\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./v4<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4156\" class=\"blob-num js-line-number\" data-line-number=\"4156\"></td>\n        <td id=\"LC4156\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./s3<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4157\" class=\"blob-num js-line-number\" data-line-number=\"4157\"></td>\n        <td id=\"LC4157\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./presign<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4158\" class=\"blob-num js-line-number\" data-line-number=\"4158\"></td>\n        <td id=\"LC4158\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4159\" class=\"blob-num js-line-number\" data-line-number=\"4159\"></td>\n        <td id=\"LC4159\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./presign<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">36</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./s3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">38</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./v2<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">39</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./v3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">40</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./v3https<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">41</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./v4<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">42</span>}],<span class=\"pl-c1\">38</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L4160\" class=\"blob-num js-line-number\" data-line-number=\"4160\"></td>\n        <td id=\"LC4160\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4161\" class=\"blob-num js-line-number\" data-line-number=\"4161\"></td>\n        <td id=\"LC4161\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4162\" class=\"blob-num js-line-number\" data-line-number=\"4162\"></td>\n        <td id=\"LC4162\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4163\" class=\"blob-num js-line-number\" data-line-number=\"4163\"></td>\n        <td id=\"LC4163\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4164\" class=\"blob-num js-line-number\" data-line-number=\"4164\"></td>\n        <td id=\"LC4164\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">S3</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">RequestSigner</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L4165\" class=\"blob-num js-line-number\" data-line-number=\"4165\"></td>\n        <td id=\"LC4165\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4166\" class=\"blob-num js-line-number\" data-line-number=\"4166\"></td>\n        <td id=\"LC4166\" class=\"blob-code blob-code-inner js-file-line\">  subResources<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4167\" class=\"blob-num js-line-number\" data-line-number=\"4167\"></td>\n        <td id=\"LC4167\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>acl<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4168\" class=\"blob-num js-line-number\" data-line-number=\"4168\"></td>\n        <td id=\"LC4168\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>cors<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4169\" class=\"blob-num js-line-number\" data-line-number=\"4169\"></td>\n        <td id=\"LC4169\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lifecycle<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4170\" class=\"blob-num js-line-number\" data-line-number=\"4170\"></td>\n        <td id=\"LC4170\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>delete<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4171\" class=\"blob-num js-line-number\" data-line-number=\"4171\"></td>\n        <td id=\"LC4171\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>location<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4172\" class=\"blob-num js-line-number\" data-line-number=\"4172\"></td>\n        <td id=\"LC4172\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>logging<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4173\" class=\"blob-num js-line-number\" data-line-number=\"4173\"></td>\n        <td id=\"LC4173\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>notification<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4174\" class=\"blob-num js-line-number\" data-line-number=\"4174\"></td>\n        <td id=\"LC4174\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>partNumber<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4175\" class=\"blob-num js-line-number\" data-line-number=\"4175\"></td>\n        <td id=\"LC4175\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>policy<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4176\" class=\"blob-num js-line-number\" data-line-number=\"4176\"></td>\n        <td id=\"LC4176\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>requestPayment<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4177\" class=\"blob-num js-line-number\" data-line-number=\"4177\"></td>\n        <td id=\"LC4177\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>restore<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4178\" class=\"blob-num js-line-number\" data-line-number=\"4178\"></td>\n        <td id=\"LC4178\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>tagging<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4179\" class=\"blob-num js-line-number\" data-line-number=\"4179\"></td>\n        <td id=\"LC4179\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>torrent<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4180\" class=\"blob-num js-line-number\" data-line-number=\"4180\"></td>\n        <td id=\"LC4180\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>uploadId<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4181\" class=\"blob-num js-line-number\" data-line-number=\"4181\"></td>\n        <td id=\"LC4181\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>uploads<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4182\" class=\"blob-num js-line-number\" data-line-number=\"4182\"></td>\n        <td id=\"LC4182\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>versionId<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4183\" class=\"blob-num js-line-number\" data-line-number=\"4183\"></td>\n        <td id=\"LC4183\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>versioning<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4184\" class=\"blob-num js-line-number\" data-line-number=\"4184\"></td>\n        <td id=\"LC4184\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>versions<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4185\" class=\"blob-num js-line-number\" data-line-number=\"4185\"></td>\n        <td id=\"LC4185\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>website<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4186\" class=\"blob-num js-line-number\" data-line-number=\"4186\"></td>\n        <td id=\"LC4186\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4187\" class=\"blob-num js-line-number\" data-line-number=\"4187\"></td>\n        <td id=\"LC4187\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4188\" class=\"blob-num js-line-number\" data-line-number=\"4188\"></td>\n        <td id=\"LC4188\" class=\"blob-code blob-code-inner js-file-line\">  responseHeaders<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4189\" class=\"blob-num js-line-number\" data-line-number=\"4189\"></td>\n        <td id=\"LC4189\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>response-content-type<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4190\" class=\"blob-num js-line-number\" data-line-number=\"4190\"></td>\n        <td id=\"LC4190\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>response-content-language<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4191\" class=\"blob-num js-line-number\" data-line-number=\"4191\"></td>\n        <td id=\"LC4191\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>response-expires<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4192\" class=\"blob-num js-line-number\" data-line-number=\"4192\"></td>\n        <td id=\"LC4192\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>response-cache-control<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4193\" class=\"blob-num js-line-number\" data-line-number=\"4193\"></td>\n        <td id=\"LC4193\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>response-content-disposition<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4194\" class=\"blob-num js-line-number\" data-line-number=\"4194\"></td>\n        <td id=\"LC4194\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>response-content-encoding<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4195\" class=\"blob-num js-line-number\" data-line-number=\"4195\"></td>\n        <td id=\"LC4195\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4196\" class=\"blob-num js-line-number\" data-line-number=\"4196\"></td>\n        <td id=\"LC4196\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4197\" class=\"blob-num js-line-number\" data-line-number=\"4197\"></td>\n        <td id=\"LC4197\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">addAuthorization</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addAuthorization</span>(<span class=\"pl-smi\">credentials</span>, <span class=\"pl-smi\">date</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4198\" class=\"blob-num js-line-number\" data-line-number=\"4198\"></td>\n        <td id=\"LC4198\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>presigned-expires<span class=\"pl-pds\">&#39;</span></span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4199\" class=\"blob-num js-line-number\" data-line-number=\"4199\"></td>\n        <td id=\"LC4199\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Date<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-en\">rfc822</span>(date);</td>\n      </tr>\n      <tr>\n        <td id=\"L4200\" class=\"blob-num js-line-number\" data-line-number=\"4200\"></td>\n        <td id=\"LC4200\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4201\" class=\"blob-num js-line-number\" data-line-number=\"4201\"></td>\n        <td id=\"LC4201\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4202\" class=\"blob-num js-line-number\" data-line-number=\"4202\"></td>\n        <td id=\"LC4202\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4203\" class=\"blob-num js-line-number\" data-line-number=\"4203\"></td>\n        <td id=\"LC4203\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>x-amz-security-token<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4204\" class=\"blob-num js-line-number\" data-line-number=\"4204\"></td>\n        <td id=\"LC4204\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4205\" class=\"blob-num js-line-number\" data-line-number=\"4205\"></td>\n        <td id=\"LC4205\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4206\" class=\"blob-num js-line-number\" data-line-number=\"4206\"></td>\n        <td id=\"LC4206\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> signature <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">sign</span>(<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">secretAccessKey</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-en\">stringToSign</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L4207\" class=\"blob-num js-line-number\" data-line-number=\"4207\"></td>\n        <td id=\"LC4207\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> auth <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AWS <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> signature;</td>\n      </tr>\n      <tr>\n        <td id=\"L4208\" class=\"blob-num js-line-number\" data-line-number=\"4208\"></td>\n        <td id=\"LC4208\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4209\" class=\"blob-num js-line-number\" data-line-number=\"4209\"></td>\n        <td id=\"LC4209\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Authorization<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> auth;</td>\n      </tr>\n      <tr>\n        <td id=\"L4210\" class=\"blob-num js-line-number\" data-line-number=\"4210\"></td>\n        <td id=\"LC4210\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4211\" class=\"blob-num js-line-number\" data-line-number=\"4211\"></td>\n        <td id=\"LC4211\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4212\" class=\"blob-num js-line-number\" data-line-number=\"4212\"></td>\n        <td id=\"LC4212\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">stringToSign</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">stringToSign</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4213\" class=\"blob-num js-line-number\" data-line-number=\"4213\"></td>\n        <td id=\"LC4213\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> r <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4214\" class=\"blob-num js-line-number\" data-line-number=\"4214\"></td>\n        <td id=\"LC4214\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4215\" class=\"blob-num js-line-number\" data-line-number=\"4215\"></td>\n        <td id=\"LC4215\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4216\" class=\"blob-num js-line-number\" data-line-number=\"4216\"></td>\n        <td id=\"LC4216\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">method</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4217\" class=\"blob-num js-line-number\" data-line-number=\"4217\"></td>\n        <td id=\"LC4217\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-MD5<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4218\" class=\"blob-num js-line-number\" data-line-number=\"4218\"></td>\n        <td id=\"LC4218\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Type<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4219\" class=\"blob-num js-line-number\" data-line-number=\"4219\"></td>\n        <td id=\"LC4219\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4220\" class=\"blob-num js-line-number\" data-line-number=\"4220\"></td>\n        <td id=\"LC4220\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>presigned-expires<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4221\" class=\"blob-num js-line-number\" data-line-number=\"4221\"></td>\n        <td id=\"LC4221\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4222\" class=\"blob-num js-line-number\" data-line-number=\"4222\"></td>\n        <td id=\"LC4222\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> headers <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">canonicalizedAmzHeaders</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4223\" class=\"blob-num js-line-number\" data-line-number=\"4223\"></td>\n        <td id=\"LC4223\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (headers) <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(headers);</td>\n      </tr>\n      <tr>\n        <td id=\"L4224\" class=\"blob-num js-line-number\" data-line-number=\"4224\"></td>\n        <td id=\"LC4224\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">canonicalizedResource</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L4225\" class=\"blob-num js-line-number\" data-line-number=\"4225\"></td>\n        <td id=\"LC4225\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4226\" class=\"blob-num js-line-number\" data-line-number=\"4226\"></td>\n        <td id=\"LC4226\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4227\" class=\"blob-num js-line-number\" data-line-number=\"4227\"></td>\n        <td id=\"LC4227\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4228\" class=\"blob-num js-line-number\" data-line-number=\"4228\"></td>\n        <td id=\"LC4228\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4229\" class=\"blob-num js-line-number\" data-line-number=\"4229\"></td>\n        <td id=\"LC4229\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4230\" class=\"blob-num js-line-number\" data-line-number=\"4230\"></td>\n        <td id=\"LC4230\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">canonicalizedAmzHeaders</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">canonicalizedAmzHeaders</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4231\" class=\"blob-num js-line-number\" data-line-number=\"4231\"></td>\n        <td id=\"LC4231\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4232\" class=\"blob-num js-line-number\" data-line-number=\"4232\"></td>\n        <td id=\"LC4232\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> amzHeaders <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4233\" class=\"blob-num js-line-number\" data-line-number=\"4233\"></td>\n        <td id=\"LC4233\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4234\" class=\"blob-num js-line-number\" data-line-number=\"4234\"></td>\n        <td id=\"LC4234\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">name</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4235\" class=\"blob-num js-line-number\" data-line-number=\"4235\"></td>\n        <td id=\"LC4235\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span>x-amz-<span class=\"pl-pds\">/</span>i</span>))</td>\n      </tr>\n      <tr>\n        <td id=\"L4236\" class=\"blob-num js-line-number\" data-line-number=\"4236\"></td>\n        <td id=\"LC4236\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">amzHeaders</span>.<span class=\"pl-c1\">push</span>(name);</td>\n      </tr>\n      <tr>\n        <td id=\"L4237\" class=\"blob-num js-line-number\" data-line-number=\"4237\"></td>\n        <td id=\"LC4237\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4238\" class=\"blob-num js-line-number\" data-line-number=\"4238\"></td>\n        <td id=\"LC4238\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4239\" class=\"blob-num js-line-number\" data-line-number=\"4239\"></td>\n        <td id=\"LC4239\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">amzHeaders</span>.<span class=\"pl-c1\">sort</span>(<span class=\"pl-k\">function</span> (<span class=\"pl-smi\">a</span>, <span class=\"pl-smi\">b</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4240\" class=\"blob-num js-line-number\" data-line-number=\"4240\"></td>\n        <td id=\"LC4240\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">a</span>.<span class=\"pl-c1\">toLowerCase</span>() <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">b</span>.<span class=\"pl-c1\">toLowerCase</span>() <span class=\"pl-k\">?</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4241\" class=\"blob-num js-line-number\" data-line-number=\"4241\"></td>\n        <td id=\"LC4241\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4242\" class=\"blob-num js-line-number\" data-line-number=\"4242\"></td>\n        <td id=\"LC4242\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4243\" class=\"blob-num js-line-number\" data-line-number=\"4243\"></td>\n        <td id=\"LC4243\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4244\" class=\"blob-num js-line-number\" data-line-number=\"4244\"></td>\n        <td id=\"LC4244\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">arrayEach</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, amzHeaders, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">name</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4245\" class=\"blob-num js-line-number\" data-line-number=\"4245\"></td>\n        <td id=\"LC4245\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">toLowerCase</span>() <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">String</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[name]));</td>\n      </tr>\n      <tr>\n        <td id=\"L4246\" class=\"blob-num js-line-number\" data-line-number=\"4246\"></td>\n        <td id=\"LC4246\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4247\" class=\"blob-num js-line-number\" data-line-number=\"4247\"></td>\n        <td id=\"LC4247\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4248\" class=\"blob-num js-line-number\" data-line-number=\"4248\"></td>\n        <td id=\"LC4248\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4249\" class=\"blob-num js-line-number\" data-line-number=\"4249\"></td>\n        <td id=\"LC4249\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4250\" class=\"blob-num js-line-number\" data-line-number=\"4250\"></td>\n        <td id=\"LC4250\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4251\" class=\"blob-num js-line-number\" data-line-number=\"4251\"></td>\n        <td id=\"LC4251\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4252\" class=\"blob-num js-line-number\" data-line-number=\"4252\"></td>\n        <td id=\"LC4252\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">canonicalizedResource</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">canonicalizedResource</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4253\" class=\"blob-num js-line-number\" data-line-number=\"4253\"></td>\n        <td id=\"LC4253\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4254\" class=\"blob-num js-line-number\" data-line-number=\"4254\"></td>\n        <td id=\"LC4254\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> r <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4255\" class=\"blob-num js-line-number\" data-line-number=\"4255\"></td>\n        <td id=\"LC4255\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4256\" class=\"blob-num js-line-number\" data-line-number=\"4256\"></td>\n        <td id=\"LC4256\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> <span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">path</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4257\" class=\"blob-num js-line-number\" data-line-number=\"4257\"></td>\n        <td id=\"LC4257\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> path <span class=\"pl-k\">=</span> parts[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4258\" class=\"blob-num js-line-number\" data-line-number=\"4258\"></td>\n        <td id=\"LC4258\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> querystring <span class=\"pl-k\">=</span> parts[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4259\" class=\"blob-num js-line-number\" data-line-number=\"4259\"></td>\n        <td id=\"LC4259\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4260\" class=\"blob-num js-line-number\" data-line-number=\"4260\"></td>\n        <td id=\"LC4260\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> resource <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4261\" class=\"blob-num js-line-number\" data-line-number=\"4261\"></td>\n        <td id=\"LC4261\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4262\" class=\"blob-num js-line-number\" data-line-number=\"4262\"></td>\n        <td id=\"LC4262\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">virtualHostedBucket</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L4263\" class=\"blob-num js-line-number\" data-line-number=\"4263\"></td>\n        <td id=\"LC4263\" class=\"blob-code blob-code-inner js-file-line\">      resource <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">virtualHostedBucket</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4264\" class=\"blob-num js-line-number\" data-line-number=\"4264\"></td>\n        <td id=\"LC4264\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4265\" class=\"blob-num js-line-number\" data-line-number=\"4265\"></td>\n        <td id=\"LC4265\" class=\"blob-code blob-code-inner js-file-line\">    resource <span class=\"pl-k\">+=</span> path;</td>\n      </tr>\n      <tr>\n        <td id=\"L4266\" class=\"blob-num js-line-number\" data-line-number=\"4266\"></td>\n        <td id=\"LC4266\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4267\" class=\"blob-num js-line-number\" data-line-number=\"4267\"></td>\n        <td id=\"LC4267\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (querystring) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4268\" class=\"blob-num js-line-number\" data-line-number=\"4268\"></td>\n        <td id=\"LC4268\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4269\" class=\"blob-num js-line-number\" data-line-number=\"4269\"></td>\n        <td id=\"LC4269\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> resources <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4270\" class=\"blob-num js-line-number\" data-line-number=\"4270\"></td>\n        <td id=\"LC4270\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4271\" class=\"blob-num js-line-number\" data-line-number=\"4271\"></td>\n        <td id=\"LC4271\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">arrayEach</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-smi\">querystring</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;<span class=\"pl-pds\">&#39;</span></span>), <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">param</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4272\" class=\"blob-num js-line-number\" data-line-number=\"4272\"></td>\n        <td id=\"LC4272\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">param</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span>)[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4273\" class=\"blob-num js-line-number\" data-line-number=\"4273\"></td>\n        <td id=\"LC4273\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> <span class=\"pl-smi\">param</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span>)[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4274\" class=\"blob-num js-line-number\" data-line-number=\"4274\"></td>\n        <td id=\"LC4274\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">subResources</span>[name] <span class=\"pl-k\">||</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">responseHeaders</span>[name]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4275\" class=\"blob-num js-line-number\" data-line-number=\"4275\"></td>\n        <td id=\"LC4275\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> subresource <span class=\"pl-k\">=</span> { name<span class=\"pl-k\">:</span> name };</td>\n      </tr>\n      <tr>\n        <td id=\"L4276\" class=\"blob-num js-line-number\" data-line-number=\"4276\"></td>\n        <td id=\"LC4276\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4277\" class=\"blob-num js-line-number\" data-line-number=\"4277\"></td>\n        <td id=\"LC4277\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">subResources</span>[name]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4278\" class=\"blob-num js-line-number\" data-line-number=\"4278\"></td>\n        <td id=\"LC4278\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-smi\">subresource</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L4279\" class=\"blob-num js-line-number\" data-line-number=\"4279\"></td>\n        <td id=\"LC4279\" class=\"blob-code blob-code-inner js-file-line\">            } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4280\" class=\"blob-num js-line-number\" data-line-number=\"4280\"></td>\n        <td id=\"LC4280\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-smi\">subresource</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">decodeURIComponent</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L4281\" class=\"blob-num js-line-number\" data-line-number=\"4281\"></td>\n        <td id=\"LC4281\" class=\"blob-code blob-code-inner js-file-line\">            }</td>\n      </tr>\n      <tr>\n        <td id=\"L4282\" class=\"blob-num js-line-number\" data-line-number=\"4282\"></td>\n        <td id=\"LC4282\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L4283\" class=\"blob-num js-line-number\" data-line-number=\"4283\"></td>\n        <td id=\"LC4283\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">resources</span>.<span class=\"pl-c1\">push</span>(subresource);</td>\n      </tr>\n      <tr>\n        <td id=\"L4284\" class=\"blob-num js-line-number\" data-line-number=\"4284\"></td>\n        <td id=\"LC4284\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L4285\" class=\"blob-num js-line-number\" data-line-number=\"4285\"></td>\n        <td id=\"LC4285\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L4286\" class=\"blob-num js-line-number\" data-line-number=\"4286\"></td>\n        <td id=\"LC4286\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4287\" class=\"blob-num js-line-number\" data-line-number=\"4287\"></td>\n        <td id=\"LC4287\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resources</span>.<span class=\"pl-c1\">sort</span>(<span class=\"pl-k\">function</span> (<span class=\"pl-smi\">a</span>, <span class=\"pl-smi\">b</span>) { <span class=\"pl-k\">return</span> <span class=\"pl-smi\">a</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">b</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">?</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>; });</td>\n      </tr>\n      <tr>\n        <td id=\"L4288\" class=\"blob-num js-line-number\" data-line-number=\"4288\"></td>\n        <td id=\"LC4288\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4289\" class=\"blob-num js-line-number\" data-line-number=\"4289\"></td>\n        <td id=\"LC4289\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resources</span>.<span class=\"pl-c1\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4290\" class=\"blob-num js-line-number\" data-line-number=\"4290\"></td>\n        <td id=\"LC4290\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4291\" class=\"blob-num js-line-number\" data-line-number=\"4291\"></td>\n        <td id=\"LC4291\" class=\"blob-code blob-code-inner js-file-line\">        querystring <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4292\" class=\"blob-num js-line-number\" data-line-number=\"4292\"></td>\n        <td id=\"LC4292\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(resources, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">res</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4293\" class=\"blob-num js-line-number\" data-line-number=\"4293\"></td>\n        <td id=\"LC4293\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">res</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4294\" class=\"blob-num js-line-number\" data-line-number=\"4294\"></td>\n        <td id=\"LC4294\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">querystring</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">res</span>.<span class=\"pl-c1\">name</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4295\" class=\"blob-num js-line-number\" data-line-number=\"4295\"></td>\n        <td id=\"LC4295\" class=\"blob-code blob-code-inner js-file-line\">          } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4296\" class=\"blob-num js-line-number\" data-line-number=\"4296\"></td>\n        <td id=\"LC4296\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">querystring</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">res</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">res</span>.<span class=\"pl-c1\">value</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4297\" class=\"blob-num js-line-number\" data-line-number=\"4297\"></td>\n        <td id=\"LC4297\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L4298\" class=\"blob-num js-line-number\" data-line-number=\"4298\"></td>\n        <td id=\"LC4298\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L4299\" class=\"blob-num js-line-number\" data-line-number=\"4299\"></td>\n        <td id=\"LC4299\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4300\" class=\"blob-num js-line-number\" data-line-number=\"4300\"></td>\n        <td id=\"LC4300\" class=\"blob-code blob-code-inner js-file-line\">        resource <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">querystring</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4301\" class=\"blob-num js-line-number\" data-line-number=\"4301\"></td>\n        <td id=\"LC4301\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L4302\" class=\"blob-num js-line-number\" data-line-number=\"4302\"></td>\n        <td id=\"LC4302\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4303\" class=\"blob-num js-line-number\" data-line-number=\"4303\"></td>\n        <td id=\"LC4303\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4304\" class=\"blob-num js-line-number\" data-line-number=\"4304\"></td>\n        <td id=\"LC4304\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4305\" class=\"blob-num js-line-number\" data-line-number=\"4305\"></td>\n        <td id=\"LC4305\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> resource;</td>\n      </tr>\n      <tr>\n        <td id=\"L4306\" class=\"blob-num js-line-number\" data-line-number=\"4306\"></td>\n        <td id=\"LC4306\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4307\" class=\"blob-num js-line-number\" data-line-number=\"4307\"></td>\n        <td id=\"LC4307\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4308\" class=\"blob-num js-line-number\" data-line-number=\"4308\"></td>\n        <td id=\"LC4308\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4309\" class=\"blob-num js-line-number\" data-line-number=\"4309\"></td>\n        <td id=\"LC4309\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">sign</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">sign</span>(<span class=\"pl-smi\">secret</span>, <span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4310\" class=\"blob-num js-line-number\" data-line-number=\"4310\"></td>\n        <td id=\"LC4310\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">hmac</span>(secret, string, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sha1<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4311\" class=\"blob-num js-line-number\" data-line-number=\"4311\"></td>\n        <td id=\"LC4311\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4312\" class=\"blob-num js-line-number\" data-line-number=\"4312\"></td>\n        <td id=\"LC4312\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L4313\" class=\"blob-num js-line-number\" data-line-number=\"4313\"></td>\n        <td id=\"LC4313\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4314\" class=\"blob-num js-line-number\" data-line-number=\"4314\"></td>\n        <td id=\"LC4314\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">S3</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4315\" class=\"blob-num js-line-number\" data-line-number=\"4315\"></td>\n        <td id=\"LC4315\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4316\" class=\"blob-num js-line-number\" data-line-number=\"4316\"></td>\n        <td id=\"LC4316\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">39</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L4317\" class=\"blob-num js-line-number\" data-line-number=\"4317\"></td>\n        <td id=\"LC4317\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4318\" class=\"blob-num js-line-number\" data-line-number=\"4318\"></td>\n        <td id=\"LC4318\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4319\" class=\"blob-num js-line-number\" data-line-number=\"4319\"></td>\n        <td id=\"LC4319\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4320\" class=\"blob-num js-line-number\" data-line-number=\"4320\"></td>\n        <td id=\"LC4320\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4321\" class=\"blob-num js-line-number\" data-line-number=\"4321\"></td>\n        <td id=\"LC4321\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V2</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">RequestSigner</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L4322\" class=\"blob-num js-line-number\" data-line-number=\"4322\"></td>\n        <td id=\"LC4322\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">addAuthorization</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addAuthorization</span>(<span class=\"pl-smi\">credentials</span>, <span class=\"pl-smi\">date</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4323\" class=\"blob-num js-line-number\" data-line-number=\"4323\"></td>\n        <td id=\"LC4323\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4324\" class=\"blob-num js-line-number\" data-line-number=\"4324\"></td>\n        <td id=\"LC4324\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>date) date <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-c1\">getDate</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4325\" class=\"blob-num js-line-number\" data-line-number=\"4325\"></td>\n        <td id=\"LC4325\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4326\" class=\"blob-num js-line-number\" data-line-number=\"4326\"></td>\n        <td id=\"LC4326\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> r <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4327\" class=\"blob-num js-line-number\" data-line-number=\"4327\"></td>\n        <td id=\"LC4327\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4328\" class=\"blob-num js-line-number\" data-line-number=\"4328\"></td>\n        <td id=\"LC4328\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">Timestamp</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-en\">iso8601</span>(date);</td>\n      </tr>\n      <tr>\n        <td id=\"L4329\" class=\"blob-num js-line-number\" data-line-number=\"4329\"></td>\n        <td id=\"LC4329\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">SignatureVersion</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>2<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4330\" class=\"blob-num js-line-number\" data-line-number=\"4330\"></td>\n        <td id=\"LC4330\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">SignatureMethod</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>HmacSHA256<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4331\" class=\"blob-num js-line-number\" data-line-number=\"4331\"></td>\n        <td id=\"LC4331\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">AWSAccessKeyId</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">accessKeyId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4332\" class=\"blob-num js-line-number\" data-line-number=\"4332\"></td>\n        <td id=\"LC4332\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4333\" class=\"blob-num js-line-number\" data-line-number=\"4333\"></td>\n        <td id=\"LC4333\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4334\" class=\"blob-num js-line-number\" data-line-number=\"4334\"></td>\n        <td id=\"LC4334\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">SecurityToken</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4335\" class=\"blob-num js-line-number\" data-line-number=\"4335\"></td>\n        <td id=\"LC4335\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4336\" class=\"blob-num js-line-number\" data-line-number=\"4336\"></td>\n        <td id=\"LC4336\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4337\" class=\"blob-num js-line-number\" data-line-number=\"4337\"></td>\n        <td id=\"LC4337\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">delete</span> <span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">Signature</span>; <span class=\"pl-c\">// delete old Signature for re-signing</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4338\" class=\"blob-num js-line-number\" data-line-number=\"4338\"></td>\n        <td id=\"LC4338\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">params</span>.<span class=\"pl-smi\">Signature</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">signature</span>(credentials);</td>\n      </tr>\n      <tr>\n        <td id=\"L4339\" class=\"blob-num js-line-number\" data-line-number=\"4339\"></td>\n        <td id=\"LC4339\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4340\" class=\"blob-num js-line-number\" data-line-number=\"4340\"></td>\n        <td id=\"LC4340\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">queryParamsToString</span>(<span class=\"pl-smi\">r</span>.<span class=\"pl-smi\">params</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4341\" class=\"blob-num js-line-number\" data-line-number=\"4341\"></td>\n        <td id=\"LC4341\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Length<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">body</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4342\" class=\"blob-num js-line-number\" data-line-number=\"4342\"></td>\n        <td id=\"LC4342\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4343\" class=\"blob-num js-line-number\" data-line-number=\"4343\"></td>\n        <td id=\"LC4343\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4344\" class=\"blob-num js-line-number\" data-line-number=\"4344\"></td>\n        <td id=\"LC4344\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">signature</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">signature</span>(<span class=\"pl-smi\">credentials</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4345\" class=\"blob-num js-line-number\" data-line-number=\"4345\"></td>\n        <td id=\"LC4345\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">hmac</span>(<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">secretAccessKey</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-en\">stringToSign</span>(), <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4346\" class=\"blob-num js-line-number\" data-line-number=\"4346\"></td>\n        <td id=\"LC4346\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4347\" class=\"blob-num js-line-number\" data-line-number=\"4347\"></td>\n        <td id=\"LC4347\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4348\" class=\"blob-num js-line-number\" data-line-number=\"4348\"></td>\n        <td id=\"LC4348\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">stringToSign</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">stringToSign</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4349\" class=\"blob-num js-line-number\" data-line-number=\"4349\"></td>\n        <td id=\"LC4349\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4350\" class=\"blob-num js-line-number\" data-line-number=\"4350\"></td>\n        <td id=\"LC4350\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">method</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4351\" class=\"blob-num js-line-number\" data-line-number=\"4351\"></td>\n        <td id=\"LC4351\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">endpoint</span>.<span class=\"pl-c1\">host</span>.<span class=\"pl-c1\">toLowerCase</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L4352\" class=\"blob-num js-line-number\" data-line-number=\"4352\"></td>\n        <td id=\"LC4352\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">pathname</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L4353\" class=\"blob-num js-line-number\" data-line-number=\"4353\"></td>\n        <td id=\"LC4353\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">queryParamsToString</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">params</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L4354\" class=\"blob-num js-line-number\" data-line-number=\"4354\"></td>\n        <td id=\"LC4354\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4355\" class=\"blob-num js-line-number\" data-line-number=\"4355\"></td>\n        <td id=\"LC4355\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4356\" class=\"blob-num js-line-number\" data-line-number=\"4356\"></td>\n        <td id=\"LC4356\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4357\" class=\"blob-num js-line-number\" data-line-number=\"4357\"></td>\n        <td id=\"LC4357\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L4358\" class=\"blob-num js-line-number\" data-line-number=\"4358\"></td>\n        <td id=\"LC4358\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4359\" class=\"blob-num js-line-number\" data-line-number=\"4359\"></td>\n        <td id=\"LC4359\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V2</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4360\" class=\"blob-num js-line-number\" data-line-number=\"4360\"></td>\n        <td id=\"LC4360\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4361\" class=\"blob-num js-line-number\" data-line-number=\"4361\"></td>\n        <td id=\"LC4361\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">40</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L4362\" class=\"blob-num js-line-number\" data-line-number=\"4362\"></td>\n        <td id=\"LC4362\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4363\" class=\"blob-num js-line-number\" data-line-number=\"4363\"></td>\n        <td id=\"LC4363\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4364\" class=\"blob-num js-line-number\" data-line-number=\"4364\"></td>\n        <td id=\"LC4364\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4365\" class=\"blob-num js-line-number\" data-line-number=\"4365\"></td>\n        <td id=\"LC4365\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4366\" class=\"blob-num js-line-number\" data-line-number=\"4366\"></td>\n        <td id=\"LC4366\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V3</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">RequestSigner</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L4367\" class=\"blob-num js-line-number\" data-line-number=\"4367\"></td>\n        <td id=\"LC4367\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">addAuthorization</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addAuthorization</span>(<span class=\"pl-smi\">credentials</span>, <span class=\"pl-smi\">date</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4368\" class=\"blob-num js-line-number\" data-line-number=\"4368\"></td>\n        <td id=\"LC4368\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4369\" class=\"blob-num js-line-number\" data-line-number=\"4369\"></td>\n        <td id=\"LC4369\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> datetime <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-en\">rfc822</span>(date);</td>\n      </tr>\n      <tr>\n        <td id=\"L4370\" class=\"blob-num js-line-number\" data-line-number=\"4370\"></td>\n        <td id=\"LC4370\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4371\" class=\"blob-num js-line-number\" data-line-number=\"4371\"></td>\n        <td id=\"LC4371\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Date<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> datetime;</td>\n      </tr>\n      <tr>\n        <td id=\"L4372\" class=\"blob-num js-line-number\" data-line-number=\"4372\"></td>\n        <td id=\"LC4372\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4373\" class=\"blob-num js-line-number\" data-line-number=\"4373\"></td>\n        <td id=\"LC4373\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4374\" class=\"blob-num js-line-number\" data-line-number=\"4374\"></td>\n        <td id=\"LC4374\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>x-amz-security-token<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4375\" class=\"blob-num js-line-number\" data-line-number=\"4375\"></td>\n        <td id=\"LC4375\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4376\" class=\"blob-num js-line-number\" data-line-number=\"4376\"></td>\n        <td id=\"LC4376\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4377\" class=\"blob-num js-line-number\" data-line-number=\"4377\"></td>\n        <td id=\"LC4377\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amzn-Authorization<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4378\" class=\"blob-num js-line-number\" data-line-number=\"4378\"></td>\n        <td id=\"LC4378\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">authorization</span>(credentials, datetime);</td>\n      </tr>\n      <tr>\n        <td id=\"L4379\" class=\"blob-num js-line-number\" data-line-number=\"4379\"></td>\n        <td id=\"LC4379\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4380\" class=\"blob-num js-line-number\" data-line-number=\"4380\"></td>\n        <td id=\"LC4380\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4381\" class=\"blob-num js-line-number\" data-line-number=\"4381\"></td>\n        <td id=\"LC4381\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4382\" class=\"blob-num js-line-number\" data-line-number=\"4382\"></td>\n        <td id=\"LC4382\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">authorization</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">authorization</span>(<span class=\"pl-smi\">credentials</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4383\" class=\"blob-num js-line-number\" data-line-number=\"4383\"></td>\n        <td id=\"LC4383\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AWS3 <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4384\" class=\"blob-num js-line-number\" data-line-number=\"4384\"></td>\n        <td id=\"LC4384\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AWSAccessKeyId=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>,<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4385\" class=\"blob-num js-line-number\" data-line-number=\"4385\"></td>\n        <td id=\"LC4385\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Algorithm=HmacSHA256,<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4386\" class=\"blob-num js-line-number\" data-line-number=\"4386\"></td>\n        <td id=\"LC4386\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>SignedHeaders=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">signedHeaders</span>() <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>,<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4387\" class=\"blob-num js-line-number\" data-line-number=\"4387\"></td>\n        <td id=\"LC4387\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Signature=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">signature</span>(credentials);</td>\n      </tr>\n      <tr>\n        <td id=\"L4388\" class=\"blob-num js-line-number\" data-line-number=\"4388\"></td>\n        <td id=\"LC4388\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4389\" class=\"blob-num js-line-number\" data-line-number=\"4389\"></td>\n        <td id=\"LC4389\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4390\" class=\"blob-num js-line-number\" data-line-number=\"4390\"></td>\n        <td id=\"LC4390\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">signedHeaders</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">signedHeaders</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4391\" class=\"blob-num js-line-number\" data-line-number=\"4391\"></td>\n        <td id=\"LC4391\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> headers <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4392\" class=\"blob-num js-line-number\" data-line-number=\"4392\"></td>\n        <td id=\"LC4392\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">headersToSign</span>(), <span class=\"pl-k\">function</span> <span class=\"pl-en\">iterator</span>(<span class=\"pl-smi\">h</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4393\" class=\"blob-num js-line-number\" data-line-number=\"4393\"></td>\n        <td id=\"LC4393\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">headers</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">h</span>.<span class=\"pl-c1\">toLowerCase</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L4394\" class=\"blob-num js-line-number\" data-line-number=\"4394\"></td>\n        <td id=\"LC4394\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4395\" class=\"blob-num js-line-number\" data-line-number=\"4395\"></td>\n        <td id=\"LC4395\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">headers</span>.<span class=\"pl-c1\">sort</span>().<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>;<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4396\" class=\"blob-num js-line-number\" data-line-number=\"4396\"></td>\n        <td id=\"LC4396\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4397\" class=\"blob-num js-line-number\" data-line-number=\"4397\"></td>\n        <td id=\"LC4397\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4398\" class=\"blob-num js-line-number\" data-line-number=\"4398\"></td>\n        <td id=\"LC4398\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">canonicalHeaders</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">canonicalHeaders</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4399\" class=\"blob-num js-line-number\" data-line-number=\"4399\"></td>\n        <td id=\"LC4399\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> headers <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4400\" class=\"blob-num js-line-number\" data-line-number=\"4400\"></td>\n        <td id=\"LC4400\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4401\" class=\"blob-num js-line-number\" data-line-number=\"4401\"></td>\n        <td id=\"LC4401\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">headersToSign</span>(), <span class=\"pl-k\">function</span> <span class=\"pl-en\">iterator</span>(<span class=\"pl-smi\">h</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4402\" class=\"blob-num js-line-number\" data-line-number=\"4402\"></td>\n        <td id=\"LC4402\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">h</span>.<span class=\"pl-c1\">toLowerCase</span>().<span class=\"pl-en\">trim</span>() <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">String</span>(headers[h]).<span class=\"pl-en\">trim</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L4403\" class=\"blob-num js-line-number\" data-line-number=\"4403\"></td>\n        <td id=\"LC4403\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4404\" class=\"blob-num js-line-number\" data-line-number=\"4404\"></td>\n        <td id=\"LC4404\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">sort</span>().<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4405\" class=\"blob-num js-line-number\" data-line-number=\"4405\"></td>\n        <td id=\"LC4405\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4406\" class=\"blob-num js-line-number\" data-line-number=\"4406\"></td>\n        <td id=\"LC4406\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4407\" class=\"blob-num js-line-number\" data-line-number=\"4407\"></td>\n        <td id=\"LC4407\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">headersToSign</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">headersToSign</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4408\" class=\"blob-num js-line-number\" data-line-number=\"4408\"></td>\n        <td id=\"LC4408\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> headers <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4409\" class=\"blob-num js-line-number\" data-line-number=\"4409\"></td>\n        <td id=\"LC4409\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>, <span class=\"pl-k\">function</span> <span class=\"pl-en\">iterator</span>(<span class=\"pl-smi\">k</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4410\" class=\"blob-num js-line-number\" data-line-number=\"4410\"></td>\n        <td id=\"LC4410\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (k <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Host<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> k <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Encoding<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">k</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span>X-Amz<span class=\"pl-pds\">/</span>i</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4411\" class=\"blob-num js-line-number\" data-line-number=\"4411\"></td>\n        <td id=\"LC4411\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">headers</span>.<span class=\"pl-c1\">push</span>(k);</td>\n      </tr>\n      <tr>\n        <td id=\"L4412\" class=\"blob-num js-line-number\" data-line-number=\"4412\"></td>\n        <td id=\"LC4412\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L4413\" class=\"blob-num js-line-number\" data-line-number=\"4413\"></td>\n        <td id=\"LC4413\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4414\" class=\"blob-num js-line-number\" data-line-number=\"4414\"></td>\n        <td id=\"LC4414\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> headers;</td>\n      </tr>\n      <tr>\n        <td id=\"L4415\" class=\"blob-num js-line-number\" data-line-number=\"4415\"></td>\n        <td id=\"LC4415\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4416\" class=\"blob-num js-line-number\" data-line-number=\"4416\"></td>\n        <td id=\"LC4416\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4417\" class=\"blob-num js-line-number\" data-line-number=\"4417\"></td>\n        <td id=\"LC4417\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">signature</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">signature</span>(<span class=\"pl-smi\">credentials</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4418\" class=\"blob-num js-line-number\" data-line-number=\"4418\"></td>\n        <td id=\"LC4418\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">hmac</span>(<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">secretAccessKey</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-en\">stringToSign</span>(), <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4419\" class=\"blob-num js-line-number\" data-line-number=\"4419\"></td>\n        <td id=\"LC4419\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4420\" class=\"blob-num js-line-number\" data-line-number=\"4420\"></td>\n        <td id=\"LC4420\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4421\" class=\"blob-num js-line-number\" data-line-number=\"4421\"></td>\n        <td id=\"LC4421\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">stringToSign</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">stringToSign</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4422\" class=\"blob-num js-line-number\" data-line-number=\"4422\"></td>\n        <td id=\"LC4422\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4423\" class=\"blob-num js-line-number\" data-line-number=\"4423\"></td>\n        <td id=\"LC4423\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">method</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4424\" class=\"blob-num js-line-number\" data-line-number=\"4424\"></td>\n        <td id=\"LC4424\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4425\" class=\"blob-num js-line-number\" data-line-number=\"4425\"></td>\n        <td id=\"LC4425\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4426\" class=\"blob-num js-line-number\" data-line-number=\"4426\"></td>\n        <td id=\"LC4426\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">canonicalHeaders</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L4427\" class=\"blob-num js-line-number\" data-line-number=\"4427\"></td>\n        <td id=\"LC4427\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">body</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4428\" class=\"blob-num js-line-number\" data-line-number=\"4428\"></td>\n        <td id=\"LC4428\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">sha256</span>(<span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L4429\" class=\"blob-num js-line-number\" data-line-number=\"4429\"></td>\n        <td id=\"LC4429\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4430\" class=\"blob-num js-line-number\" data-line-number=\"4430\"></td>\n        <td id=\"LC4430\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4431\" class=\"blob-num js-line-number\" data-line-number=\"4431\"></td>\n        <td id=\"LC4431\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L4432\" class=\"blob-num js-line-number\" data-line-number=\"4432\"></td>\n        <td id=\"LC4432\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4433\" class=\"blob-num js-line-number\" data-line-number=\"4433\"></td>\n        <td id=\"LC4433\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V3</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4434\" class=\"blob-num js-line-number\" data-line-number=\"4434\"></td>\n        <td id=\"LC4434\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4435\" class=\"blob-num js-line-number\" data-line-number=\"4435\"></td>\n        <td id=\"LC4435\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">41</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L4436\" class=\"blob-num js-line-number\" data-line-number=\"4436\"></td>\n        <td id=\"LC4436\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4437\" class=\"blob-num js-line-number\" data-line-number=\"4437\"></td>\n        <td id=\"LC4437\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4438\" class=\"blob-num js-line-number\" data-line-number=\"4438\"></td>\n        <td id=\"LC4438\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4439\" class=\"blob-num js-line-number\" data-line-number=\"4439\"></td>\n        <td id=\"LC4439\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./v3<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4440\" class=\"blob-num js-line-number\" data-line-number=\"4440\"></td>\n        <td id=\"LC4440\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4441\" class=\"blob-num js-line-number\" data-line-number=\"4441\"></td>\n        <td id=\"LC4441\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4442\" class=\"blob-num js-line-number\" data-line-number=\"4442\"></td>\n        <td id=\"LC4442\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">V3Https</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V3</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L4443\" class=\"blob-num js-line-number\" data-line-number=\"4443\"></td>\n        <td id=\"LC4443\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">authorization</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">authorization</span>(<span class=\"pl-smi\">credentials</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4444\" class=\"blob-num js-line-number\" data-line-number=\"4444\"></td>\n        <td id=\"LC4444\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AWS3-HTTPS <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4445\" class=\"blob-num js-line-number\" data-line-number=\"4445\"></td>\n        <td id=\"LC4445\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AWSAccessKeyId=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>,<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4446\" class=\"blob-num js-line-number\" data-line-number=\"4446\"></td>\n        <td id=\"LC4446\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Algorithm=HmacSHA256,<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4447\" class=\"blob-num js-line-number\" data-line-number=\"4447\"></td>\n        <td id=\"LC4447\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Signature=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">signature</span>(credentials);</td>\n      </tr>\n      <tr>\n        <td id=\"L4448\" class=\"blob-num js-line-number\" data-line-number=\"4448\"></td>\n        <td id=\"LC4448\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4449\" class=\"blob-num js-line-number\" data-line-number=\"4449\"></td>\n        <td id=\"LC4449\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4450\" class=\"blob-num js-line-number\" data-line-number=\"4450\"></td>\n        <td id=\"LC4450\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">stringToSign</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">stringToSign</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4451\" class=\"blob-num js-line-number\" data-line-number=\"4451\"></td>\n        <td id=\"LC4451\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Date<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4452\" class=\"blob-num js-line-number\" data-line-number=\"4452\"></td>\n        <td id=\"LC4452\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4453\" class=\"blob-num js-line-number\" data-line-number=\"4453\"></td>\n        <td id=\"LC4453\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L4454\" class=\"blob-num js-line-number\" data-line-number=\"4454\"></td>\n        <td id=\"LC4454\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4455\" class=\"blob-num js-line-number\" data-line-number=\"4455\"></td>\n        <td id=\"LC4455\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">V3Https</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4456\" class=\"blob-num js-line-number\" data-line-number=\"4456\"></td>\n        <td id=\"LC4456\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4457\" class=\"blob-num js-line-number\" data-line-number=\"4457\"></td>\n        <td id=\"LC4457\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./v3<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">40</span>}],<span class=\"pl-c1\">42</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L4458\" class=\"blob-num js-line-number\" data-line-number=\"4458\"></td>\n        <td id=\"LC4458\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4459\" class=\"blob-num js-line-number\" data-line-number=\"4459\"></td>\n        <td id=\"LC4459\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> inherit <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">inherit</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4460\" class=\"blob-num js-line-number\" data-line-number=\"4460\"></td>\n        <td id=\"LC4460\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4461\" class=\"blob-num js-line-number\" data-line-number=\"4461\"></td>\n        <td id=\"LC4461\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4462\" class=\"blob-num js-line-number\" data-line-number=\"4462\"></td>\n        <td id=\"LC4462\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> cachedSecret <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L4463\" class=\"blob-num js-line-number\" data-line-number=\"4463\"></td>\n        <td id=\"LC4463\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4464\" class=\"blob-num js-line-number\" data-line-number=\"4464\"></td>\n        <td id=\"LC4464\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4465\" class=\"blob-num js-line-number\" data-line-number=\"4465\"></td>\n        <td id=\"LC4465\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> expiresHeader <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>presigned-expires<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4466\" class=\"blob-num js-line-number\" data-line-number=\"4466\"></td>\n        <td id=\"LC4466\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4467\" class=\"blob-num js-line-number\" data-line-number=\"4467\"></td>\n        <td id=\"LC4467\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4468\" class=\"blob-num js-line-number\" data-line-number=\"4468\"></td>\n        <td id=\"LC4468\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V4</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">inherit</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">RequestSigner</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L4469\" class=\"blob-num js-line-number\" data-line-number=\"4469\"></td>\n        <td id=\"LC4469\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">constructor</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">V4</span>(<span class=\"pl-smi\">request</span>, <span class=\"pl-smi\">serviceName</span>, <span class=\"pl-smi\">signatureCache</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4470\" class=\"blob-num js-line-number\" data-line-number=\"4470\"></td>\n        <td id=\"LC4470\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-smi\">RequestSigner</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, request);</td>\n      </tr>\n      <tr>\n        <td id=\"L4471\" class=\"blob-num js-line-number\" data-line-number=\"4471\"></td>\n        <td id=\"LC4471\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">serviceName</span> <span class=\"pl-k\">=</span> serviceName;</td>\n      </tr>\n      <tr>\n        <td id=\"L4472\" class=\"blob-num js-line-number\" data-line-number=\"4472\"></td>\n        <td id=\"LC4472\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">signatureCache</span> <span class=\"pl-k\">=</span> signatureCache;</td>\n      </tr>\n      <tr>\n        <td id=\"L4473\" class=\"blob-num js-line-number\" data-line-number=\"4473\"></td>\n        <td id=\"LC4473\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4474\" class=\"blob-num js-line-number\" data-line-number=\"4474\"></td>\n        <td id=\"LC4474\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4475\" class=\"blob-num js-line-number\" data-line-number=\"4475\"></td>\n        <td id=\"LC4475\" class=\"blob-code blob-code-inner js-file-line\">  algorithm<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AWS4-HMAC-SHA256<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4476\" class=\"blob-num js-line-number\" data-line-number=\"4476\"></td>\n        <td id=\"LC4476\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4477\" class=\"blob-num js-line-number\" data-line-number=\"4477\"></td>\n        <td id=\"LC4477\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">addAuthorization</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addAuthorization</span>(<span class=\"pl-smi\">credentials</span>, <span class=\"pl-smi\">date</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4478\" class=\"blob-num js-line-number\" data-line-number=\"4478\"></td>\n        <td id=\"LC4478\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> datetime <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-en\">iso8601</span>(date).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-c1\">[:<span class=\"pl-cce\">\\-</span>]</span><span class=\"pl-k\">|</span><span class=\"pl-cce\">\\.</span><span class=\"pl-c1\">\\d</span><span class=\"pl-k\">{3}</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4479\" class=\"blob-num js-line-number\" data-line-number=\"4479\"></td>\n        <td id=\"LC4479\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4480\" class=\"blob-num js-line-number\" data-line-number=\"4480\"></td>\n        <td id=\"LC4480\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">isPresigned</span>()) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4481\" class=\"blob-num js-line-number\" data-line-number=\"4481\"></td>\n        <td id=\"LC4481\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">updateForPresigned</span>(credentials, datetime);</td>\n      </tr>\n      <tr>\n        <td id=\"L4482\" class=\"blob-num js-line-number\" data-line-number=\"4482\"></td>\n        <td id=\"LC4482\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4483\" class=\"blob-num js-line-number\" data-line-number=\"4483\"></td>\n        <td id=\"LC4483\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">addHeaders</span>(credentials, datetime);</td>\n      </tr>\n      <tr>\n        <td id=\"L4484\" class=\"blob-num js-line-number\" data-line-number=\"4484\"></td>\n        <td id=\"LC4484\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4485\" class=\"blob-num js-line-number\" data-line-number=\"4485\"></td>\n        <td id=\"LC4485\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4486\" class=\"blob-num js-line-number\" data-line-number=\"4486\"></td>\n        <td id=\"LC4486\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Authorization<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4487\" class=\"blob-num js-line-number\" data-line-number=\"4487\"></td>\n        <td id=\"LC4487\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">authorization</span>(credentials, datetime);</td>\n      </tr>\n      <tr>\n        <td id=\"L4488\" class=\"blob-num js-line-number\" data-line-number=\"4488\"></td>\n        <td id=\"LC4488\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4489\" class=\"blob-num js-line-number\" data-line-number=\"4489\"></td>\n        <td id=\"LC4489\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4490\" class=\"blob-num js-line-number\" data-line-number=\"4490\"></td>\n        <td id=\"LC4490\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">addHeaders</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addHeaders</span>(<span class=\"pl-smi\">credentials</span>, <span class=\"pl-smi\">datetime</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4491\" class=\"blob-num js-line-number\" data-line-number=\"4491\"></td>\n        <td id=\"LC4491\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Date<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> datetime;</td>\n      </tr>\n      <tr>\n        <td id=\"L4492\" class=\"blob-num js-line-number\" data-line-number=\"4492\"></td>\n        <td id=\"LC4492\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4493\" class=\"blob-num js-line-number\" data-line-number=\"4493\"></td>\n        <td id=\"LC4493\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>x-amz-security-token<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4494\" class=\"blob-num js-line-number\" data-line-number=\"4494\"></td>\n        <td id=\"LC4494\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4495\" class=\"blob-num js-line-number\" data-line-number=\"4495\"></td>\n        <td id=\"LC4495\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4496\" class=\"blob-num js-line-number\" data-line-number=\"4496\"></td>\n        <td id=\"LC4496\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4497\" class=\"blob-num js-line-number\" data-line-number=\"4497\"></td>\n        <td id=\"LC4497\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">updateForPresigned</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">updateForPresigned</span>(<span class=\"pl-smi\">credentials</span>, <span class=\"pl-smi\">datetime</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4498\" class=\"blob-num js-line-number\" data-line-number=\"4498\"></td>\n        <td id=\"LC4498\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> credString <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">credentialString</span>(datetime);</td>\n      </tr>\n      <tr>\n        <td id=\"L4499\" class=\"blob-num js-line-number\" data-line-number=\"4499\"></td>\n        <td id=\"LC4499\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> qs <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4500\" class=\"blob-num js-line-number\" data-line-number=\"4500\"></td>\n        <td id=\"LC4500\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Date<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> datetime,</td>\n      </tr>\n      <tr>\n        <td id=\"L4501\" class=\"blob-num js-line-number\" data-line-number=\"4501\"></td>\n        <td id=\"LC4501\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Algorithm<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">algorithm</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4502\" class=\"blob-num js-line-number\" data-line-number=\"4502\"></td>\n        <td id=\"LC4502\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Credential<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> credString,</td>\n      </tr>\n      <tr>\n        <td id=\"L4503\" class=\"blob-num js-line-number\" data-line-number=\"4503\"></td>\n        <td id=\"LC4503\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Expires<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[expiresHeader],</td>\n      </tr>\n      <tr>\n        <td id=\"L4504\" class=\"blob-num js-line-number\" data-line-number=\"4504\"></td>\n        <td id=\"LC4504\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-SignedHeaders<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">signedHeaders</span>()</td>\n      </tr>\n      <tr>\n        <td id=\"L4505\" class=\"blob-num js-line-number\" data-line-number=\"4505\"></td>\n        <td id=\"LC4505\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L4506\" class=\"blob-num js-line-number\" data-line-number=\"4506\"></td>\n        <td id=\"LC4506\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4507\" class=\"blob-num js-line-number\" data-line-number=\"4507\"></td>\n        <td id=\"LC4507\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4508\" class=\"blob-num js-line-number\" data-line-number=\"4508\"></td>\n        <td id=\"LC4508\" class=\"blob-code blob-code-inner js-file-line\">      qs[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Security-Token<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">sessionToken</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4509\" class=\"blob-num js-line-number\" data-line-number=\"4509\"></td>\n        <td id=\"LC4509\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4510\" class=\"blob-num js-line-number\" data-line-number=\"4510\"></td>\n        <td id=\"LC4510\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4511\" class=\"blob-num js-line-number\" data-line-number=\"4511\"></td>\n        <td id=\"LC4511\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Type<span class=\"pl-pds\">&#39;</span></span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4512\" class=\"blob-num js-line-number\" data-line-number=\"4512\"></td>\n        <td id=\"LC4512\" class=\"blob-code blob-code-inner js-file-line\">      qs[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Type<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-Type<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4513\" class=\"blob-num js-line-number\" data-line-number=\"4513\"></td>\n        <td id=\"LC4513\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4514\" class=\"blob-num js-line-number\" data-line-number=\"4514\"></td>\n        <td id=\"LC4514\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-MD5<span class=\"pl-pds\">&#39;</span></span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4515\" class=\"blob-num js-line-number\" data-line-number=\"4515\"></td>\n        <td id=\"LC4515\" class=\"blob-code blob-code-inner js-file-line\">      qs[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-MD5<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Content-MD5<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4516\" class=\"blob-num js-line-number\" data-line-number=\"4516\"></td>\n        <td id=\"LC4516\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4517\" class=\"blob-num js-line-number\" data-line-number=\"4517\"></td>\n        <td id=\"LC4517\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Cache-Control<span class=\"pl-pds\">&#39;</span></span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4518\" class=\"blob-num js-line-number\" data-line-number=\"4518\"></td>\n        <td id=\"LC4518\" class=\"blob-code blob-code-inner js-file-line\">      qs[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Cache-Control<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Cache-Control<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4519\" class=\"blob-num js-line-number\" data-line-number=\"4519\"></td>\n        <td id=\"LC4519\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4520\" class=\"blob-num js-line-number\" data-line-number=\"4520\"></td>\n        <td id=\"LC4520\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4521\" class=\"blob-num js-line-number\" data-line-number=\"4521\"></td>\n        <td id=\"LC4521\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">each</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4522\" class=\"blob-num js-line-number\" data-line-number=\"4522\"></td>\n        <td id=\"LC4522\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (key <span class=\"pl-k\">===</span> expiresHeader) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4523\" class=\"blob-num js-line-number\" data-line-number=\"4523\"></td>\n        <td id=\"LC4523\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">isSignableHeader</span>(key) <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4524\" class=\"blob-num js-line-number\" data-line-number=\"4524\"></td>\n        <td id=\"LC4524\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">toLowerCase</span>().<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>x-amz-<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4525\" class=\"blob-num js-line-number\" data-line-number=\"4525\"></td>\n        <td id=\"LC4525\" class=\"blob-code blob-code-inner js-file-line\">        qs[key] <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L4526\" class=\"blob-num js-line-number\" data-line-number=\"4526\"></td>\n        <td id=\"LC4526\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L4527\" class=\"blob-num js-line-number\" data-line-number=\"4527\"></td>\n        <td id=\"LC4527\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4528\" class=\"blob-num js-line-number\" data-line-number=\"4528\"></td>\n        <td id=\"LC4528\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4529\" class=\"blob-num js-line-number\" data-line-number=\"4529\"></td>\n        <td id=\"LC4529\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> sep <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">path</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4530\" class=\"blob-num js-line-number\" data-line-number=\"4530\"></td>\n        <td id=\"LC4530\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">+=</span> sep <span class=\"pl-k\">+</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">queryParamsToString</span>(qs);</td>\n      </tr>\n      <tr>\n        <td id=\"L4531\" class=\"blob-num js-line-number\" data-line-number=\"4531\"></td>\n        <td id=\"LC4531\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4532\" class=\"blob-num js-line-number\" data-line-number=\"4532\"></td>\n        <td id=\"LC4532\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4533\" class=\"blob-num js-line-number\" data-line-number=\"4533\"></td>\n        <td id=\"LC4533\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">authorization</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">authorization</span>(<span class=\"pl-smi\">credentials</span>, <span class=\"pl-smi\">datetime</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4534\" class=\"blob-num js-line-number\" data-line-number=\"4534\"></td>\n        <td id=\"LC4534\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4535\" class=\"blob-num js-line-number\" data-line-number=\"4535\"></td>\n        <td id=\"LC4535\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> credString <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">credentialString</span>(datetime);</td>\n      </tr>\n      <tr>\n        <td id=\"L4536\" class=\"blob-num js-line-number\" data-line-number=\"4536\"></td>\n        <td id=\"LC4536\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">algorithm</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> Credential=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4537\" class=\"blob-num js-line-number\" data-line-number=\"4537\"></td>\n        <td id=\"LC4537\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> credString);</td>\n      </tr>\n      <tr>\n        <td id=\"L4538\" class=\"blob-num js-line-number\" data-line-number=\"4538\"></td>\n        <td id=\"LC4538\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>SignedHeaders=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">signedHeaders</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L4539\" class=\"blob-num js-line-number\" data-line-number=\"4539\"></td>\n        <td id=\"LC4539\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Signature=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">signature</span>(credentials, datetime));</td>\n      </tr>\n      <tr>\n        <td id=\"L4540\" class=\"blob-num js-line-number\" data-line-number=\"4540\"></td>\n        <td id=\"LC4540\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>, <span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4541\" class=\"blob-num js-line-number\" data-line-number=\"4541\"></td>\n        <td id=\"LC4541\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4542\" class=\"blob-num js-line-number\" data-line-number=\"4542\"></td>\n        <td id=\"LC4542\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4543\" class=\"blob-num js-line-number\" data-line-number=\"4543\"></td>\n        <td id=\"LC4543\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">signature</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">signature</span>(<span class=\"pl-smi\">credentials</span>, <span class=\"pl-smi\">datetime</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4544\" class=\"blob-num js-line-number\" data-line-number=\"4544\"></td>\n        <td id=\"LC4544\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> cache <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4545\" class=\"blob-num js-line-number\" data-line-number=\"4545\"></td>\n        <td id=\"LC4545\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">signatureCache</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4546\" class=\"blob-num js-line-number\" data-line-number=\"4546\"></td>\n        <td id=\"LC4546\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> cache <span class=\"pl-k\">=</span> cachedSecret[<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">serviceName</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4547\" class=\"blob-num js-line-number\" data-line-number=\"4547\"></td>\n        <td id=\"LC4547\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4548\" class=\"blob-num js-line-number\" data-line-number=\"4548\"></td>\n        <td id=\"LC4548\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> date <span class=\"pl-k\">=</span> <span class=\"pl-smi\">datetime</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">0</span>, <span class=\"pl-c1\">8</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4549\" class=\"blob-num js-line-number\" data-line-number=\"4549\"></td>\n        <td id=\"LC4549\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4550\" class=\"blob-num js-line-number\" data-line-number=\"4550\"></td>\n        <td id=\"LC4550\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>cache <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4551\" class=\"blob-num js-line-number\" data-line-number=\"4551\"></td>\n        <td id=\"LC4551\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">cache</span>.<span class=\"pl-smi\">akid</span> <span class=\"pl-k\">!==</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">accessKeyId</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4552\" class=\"blob-num js-line-number\" data-line-number=\"4552\"></td>\n        <td id=\"LC4552\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">cache</span>.<span class=\"pl-smi\">region</span> <span class=\"pl-k\">!==</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">region</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4553\" class=\"blob-num js-line-number\" data-line-number=\"4553\"></td>\n        <td id=\"LC4553\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">cache</span>.<span class=\"pl-smi\">date</span> <span class=\"pl-k\">!==</span> date) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4554\" class=\"blob-num js-line-number\" data-line-number=\"4554\"></td>\n        <td id=\"LC4554\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4555\" class=\"blob-num js-line-number\" data-line-number=\"4555\"></td>\n        <td id=\"LC4555\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> kSecret <span class=\"pl-k\">=</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">secretAccessKey</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4556\" class=\"blob-num js-line-number\" data-line-number=\"4556\"></td>\n        <td id=\"LC4556\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> kDate <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">hmac</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AWS4<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> kSecret, date, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>buffer<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4557\" class=\"blob-num js-line-number\" data-line-number=\"4557\"></td>\n        <td id=\"LC4557\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> kRegion <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">hmac</span>(kDate, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">region</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>buffer<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4558\" class=\"blob-num js-line-number\" data-line-number=\"4558\"></td>\n        <td id=\"LC4558\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> kService <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">hmac</span>(kRegion, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">serviceName</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>buffer<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4559\" class=\"blob-num js-line-number\" data-line-number=\"4559\"></td>\n        <td id=\"LC4559\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> kCredentials <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">hmac</span>(kService, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>aws4_request<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>buffer<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4560\" class=\"blob-num js-line-number\" data-line-number=\"4560\"></td>\n        <td id=\"LC4560\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4561\" class=\"blob-num js-line-number\" data-line-number=\"4561\"></td>\n        <td id=\"LC4561\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">signatureCache</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4562\" class=\"blob-num js-line-number\" data-line-number=\"4562\"></td>\n        <td id=\"LC4562\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">hmac</span>(kCredentials, <span class=\"pl-v\">this</span>.<span class=\"pl-en\">stringToSign</span>(datetime), <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>hex<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4563\" class=\"blob-num js-line-number\" data-line-number=\"4563\"></td>\n        <td id=\"LC4563\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L4564\" class=\"blob-num js-line-number\" data-line-number=\"4564\"></td>\n        <td id=\"LC4564\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4565\" class=\"blob-num js-line-number\" data-line-number=\"4565\"></td>\n        <td id=\"LC4565\" class=\"blob-code blob-code-inner js-file-line\">      cachedSecret[<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">serviceName</span>] <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4566\" class=\"blob-num js-line-number\" data-line-number=\"4566\"></td>\n        <td id=\"LC4566\" class=\"blob-code blob-code-inner js-file-line\">        region<span class=\"pl-k\">:</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">region</span>, date<span class=\"pl-k\">:</span> date,</td>\n      </tr>\n      <tr>\n        <td id=\"L4567\" class=\"blob-num js-line-number\" data-line-number=\"4567\"></td>\n        <td id=\"LC4567\" class=\"blob-code blob-code-inner js-file-line\">        key<span class=\"pl-k\">:</span> kCredentials, akid<span class=\"pl-k\">:</span> <span class=\"pl-smi\">credentials</span>.<span class=\"pl-smi\">accessKeyId</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4568\" class=\"blob-num js-line-number\" data-line-number=\"4568\"></td>\n        <td id=\"LC4568\" class=\"blob-code blob-code-inner js-file-line\">      };</td>\n      </tr>\n      <tr>\n        <td id=\"L4569\" class=\"blob-num js-line-number\" data-line-number=\"4569\"></td>\n        <td id=\"LC4569\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4570\" class=\"blob-num js-line-number\" data-line-number=\"4570\"></td>\n        <td id=\"LC4570\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4571\" class=\"blob-num js-line-number\" data-line-number=\"4571\"></td>\n        <td id=\"LC4571\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> cachedSecret[<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">serviceName</span>].<span class=\"pl-smi\">key</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4572\" class=\"blob-num js-line-number\" data-line-number=\"4572\"></td>\n        <td id=\"LC4572\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">hmac</span>(key, <span class=\"pl-v\">this</span>.<span class=\"pl-en\">stringToSign</span>(datetime), <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>hex<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4573\" class=\"blob-num js-line-number\" data-line-number=\"4573\"></td>\n        <td id=\"LC4573\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4574\" class=\"blob-num js-line-number\" data-line-number=\"4574\"></td>\n        <td id=\"LC4574\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4575\" class=\"blob-num js-line-number\" data-line-number=\"4575\"></td>\n        <td id=\"LC4575\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">stringToSign</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">stringToSign</span>(<span class=\"pl-smi\">datetime</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4576\" class=\"blob-num js-line-number\" data-line-number=\"4576\"></td>\n        <td id=\"LC4576\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4577\" class=\"blob-num js-line-number\" data-line-number=\"4577\"></td>\n        <td id=\"LC4577\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>AWS4-HMAC-SHA256<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4578\" class=\"blob-num js-line-number\" data-line-number=\"4578\"></td>\n        <td id=\"LC4578\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(datetime);</td>\n      </tr>\n      <tr>\n        <td id=\"L4579\" class=\"blob-num js-line-number\" data-line-number=\"4579\"></td>\n        <td id=\"LC4579\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">credentialString</span>(datetime));</td>\n      </tr>\n      <tr>\n        <td id=\"L4580\" class=\"blob-num js-line-number\" data-line-number=\"4580\"></td>\n        <td id=\"LC4580\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">hexEncodedHash</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">canonicalString</span>()));</td>\n      </tr>\n      <tr>\n        <td id=\"L4581\" class=\"blob-num js-line-number\" data-line-number=\"4581\"></td>\n        <td id=\"LC4581\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4582\" class=\"blob-num js-line-number\" data-line-number=\"4582\"></td>\n        <td id=\"LC4582\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4583\" class=\"blob-num js-line-number\" data-line-number=\"4583\"></td>\n        <td id=\"LC4583\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4584\" class=\"blob-num js-line-number\" data-line-number=\"4584\"></td>\n        <td id=\"LC4584\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">canonicalString</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">canonicalString</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4585\" class=\"blob-num js-line-number\" data-line-number=\"4585\"></td>\n        <td id=\"LC4585\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [], pathname <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">pathname</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4586\" class=\"blob-num js-line-number\" data-line-number=\"4586\"></td>\n        <td id=\"LC4586\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">serviceName</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>s3<span class=\"pl-pds\">&#39;</span></span>) pathname <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">uriEscapePath</span>(pathname);</td>\n      </tr>\n      <tr>\n        <td id=\"L4587\" class=\"blob-num js-line-number\" data-line-number=\"4587\"></td>\n        <td id=\"LC4587\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4588\" class=\"blob-num js-line-number\" data-line-number=\"4588\"></td>\n        <td id=\"LC4588\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">method</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4589\" class=\"blob-num js-line-number\" data-line-number=\"4589\"></td>\n        <td id=\"LC4589\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(pathname);</td>\n      </tr>\n      <tr>\n        <td id=\"L4590\" class=\"blob-num js-line-number\" data-line-number=\"4590\"></td>\n        <td id=\"LC4590\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">search</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L4591\" class=\"blob-num js-line-number\" data-line-number=\"4591\"></td>\n        <td id=\"LC4591\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">canonicalHeaders</span>() <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4592\" class=\"blob-num js-line-number\" data-line-number=\"4592\"></td>\n        <td id=\"LC4592\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">signedHeaders</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L4593\" class=\"blob-num js-line-number\" data-line-number=\"4593\"></td>\n        <td id=\"LC4593\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">hexEncodedBodyHash</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L4594\" class=\"blob-num js-line-number\" data-line-number=\"4594\"></td>\n        <td id=\"LC4594\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4595\" class=\"blob-num js-line-number\" data-line-number=\"4595\"></td>\n        <td id=\"LC4595\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4596\" class=\"blob-num js-line-number\" data-line-number=\"4596\"></td>\n        <td id=\"LC4596\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4597\" class=\"blob-num js-line-number\" data-line-number=\"4597\"></td>\n        <td id=\"LC4597\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">canonicalHeaders</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">canonicalHeaders</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4598\" class=\"blob-num js-line-number\" data-line-number=\"4598\"></td>\n        <td id=\"LC4598\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> headers <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4599\" class=\"blob-num js-line-number\" data-line-number=\"4599\"></td>\n        <td id=\"LC4599\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">each</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">item</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4600\" class=\"blob-num js-line-number\" data-line-number=\"4600\"></td>\n        <td id=\"LC4600\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">headers</span>.<span class=\"pl-c1\">push</span>([key, item]);</td>\n      </tr>\n      <tr>\n        <td id=\"L4601\" class=\"blob-num js-line-number\" data-line-number=\"4601\"></td>\n        <td id=\"LC4601\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4602\" class=\"blob-num js-line-number\" data-line-number=\"4602\"></td>\n        <td id=\"LC4602\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">headers</span>.<span class=\"pl-c1\">sort</span>(<span class=\"pl-k\">function</span> (<span class=\"pl-smi\">a</span>, <span class=\"pl-smi\">b</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4603\" class=\"blob-num js-line-number\" data-line-number=\"4603\"></td>\n        <td id=\"LC4603\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> a[<span class=\"pl-c1\">0</span>].<span class=\"pl-c1\">toLowerCase</span>() <span class=\"pl-k\">&lt;</span> b[<span class=\"pl-c1\">0</span>].<span class=\"pl-c1\">toLowerCase</span>() <span class=\"pl-k\">?</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4604\" class=\"blob-num js-line-number\" data-line-number=\"4604\"></td>\n        <td id=\"LC4604\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4605\" class=\"blob-num js-line-number\" data-line-number=\"4605\"></td>\n        <td id=\"LC4605\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4606\" class=\"blob-num js-line-number\" data-line-number=\"4606\"></td>\n        <td id=\"LC4606\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">arrayEach</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, headers, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">item</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4607\" class=\"blob-num js-line-number\" data-line-number=\"4607\"></td>\n        <td id=\"LC4607\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> item[<span class=\"pl-c1\">0</span>].<span class=\"pl-c1\">toLowerCase</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4608\" class=\"blob-num js-line-number\" data-line-number=\"4608\"></td>\n        <td id=\"LC4608\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">isSignableHeader</span>(key)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4609\" class=\"blob-num js-line-number\" data-line-number=\"4609\"></td>\n        <td id=\"LC4609\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(key <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4610\" class=\"blob-num js-line-number\" data-line-number=\"4610\"></td>\n        <td id=\"LC4610\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-v\">this</span>.<span class=\"pl-en\">canonicalHeaderValues</span>(item[<span class=\"pl-c1\">1</span>].<span class=\"pl-c1\">toString</span>()));</td>\n      </tr>\n      <tr>\n        <td id=\"L4611\" class=\"blob-num js-line-number\" data-line-number=\"4611\"></td>\n        <td id=\"LC4611\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L4612\" class=\"blob-num js-line-number\" data-line-number=\"4612\"></td>\n        <td id=\"LC4612\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4613\" class=\"blob-num js-line-number\" data-line-number=\"4613\"></td>\n        <td id=\"LC4613\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4614\" class=\"blob-num js-line-number\" data-line-number=\"4614\"></td>\n        <td id=\"LC4614\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4615\" class=\"blob-num js-line-number\" data-line-number=\"4615\"></td>\n        <td id=\"LC4615\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4616\" class=\"blob-num js-line-number\" data-line-number=\"4616\"></td>\n        <td id=\"LC4616\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">canonicalHeaderValues</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">canonicalHeaderValues</span>(<span class=\"pl-smi\">values</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4617\" class=\"blob-num js-line-number\" data-line-number=\"4617\"></td>\n        <td id=\"LC4617\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">values</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">+</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">+</span><span class=\"pl-k\">|</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">+</span><span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4618\" class=\"blob-num js-line-number\" data-line-number=\"4618\"></td>\n        <td id=\"LC4618\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4619\" class=\"blob-num js-line-number\" data-line-number=\"4619\"></td>\n        <td id=\"LC4619\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4620\" class=\"blob-num js-line-number\" data-line-number=\"4620\"></td>\n        <td id=\"LC4620\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">signedHeaders</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">signedHeaders</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4621\" class=\"blob-num js-line-number\" data-line-number=\"4621\"></td>\n        <td id=\"LC4621\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> keys <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4622\" class=\"blob-num js-line-number\" data-line-number=\"4622\"></td>\n        <td id=\"LC4622\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">each</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4623\" class=\"blob-num js-line-number\" data-line-number=\"4623\"></td>\n        <td id=\"LC4623\" class=\"blob-code blob-code-inner js-file-line\">      key <span class=\"pl-k\">=</span> <span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">toLowerCase</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4624\" class=\"blob-num js-line-number\" data-line-number=\"4624\"></td>\n        <td id=\"LC4624\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">isSignableHeader</span>(key)) <span class=\"pl-smi\">keys</span>.<span class=\"pl-c1\">push</span>(key);</td>\n      </tr>\n      <tr>\n        <td id=\"L4625\" class=\"blob-num js-line-number\" data-line-number=\"4625\"></td>\n        <td id=\"LC4625\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4626\" class=\"blob-num js-line-number\" data-line-number=\"4626\"></td>\n        <td id=\"LC4626\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">keys</span>.<span class=\"pl-c1\">sort</span>().<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>;<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4627\" class=\"blob-num js-line-number\" data-line-number=\"4627\"></td>\n        <td id=\"LC4627\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4628\" class=\"blob-num js-line-number\" data-line-number=\"4628\"></td>\n        <td id=\"LC4628\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4629\" class=\"blob-num js-line-number\" data-line-number=\"4629\"></td>\n        <td id=\"LC4629\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">credentialString</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">credentialString</span>(<span class=\"pl-smi\">datetime</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4630\" class=\"blob-num js-line-number\" data-line-number=\"4630\"></td>\n        <td id=\"LC4630\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4631\" class=\"blob-num js-line-number\" data-line-number=\"4631\"></td>\n        <td id=\"LC4631\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">datetime</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">0</span>, <span class=\"pl-c1\">8</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L4632\" class=\"blob-num js-line-number\" data-line-number=\"4632\"></td>\n        <td id=\"LC4632\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-smi\">region</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4633\" class=\"blob-num js-line-number\" data-line-number=\"4633\"></td>\n        <td id=\"LC4633\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">serviceName</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4634\" class=\"blob-num js-line-number\" data-line-number=\"4634\"></td>\n        <td id=\"LC4634\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>aws4_request<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4635\" class=\"blob-num js-line-number\" data-line-number=\"4635\"></td>\n        <td id=\"LC4635\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4636\" class=\"blob-num js-line-number\" data-line-number=\"4636\"></td>\n        <td id=\"LC4636\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4637\" class=\"blob-num js-line-number\" data-line-number=\"4637\"></td>\n        <td id=\"LC4637\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4638\" class=\"blob-num js-line-number\" data-line-number=\"4638\"></td>\n        <td id=\"LC4638\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">hexEncodedHash</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">hash</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4639\" class=\"blob-num js-line-number\" data-line-number=\"4639\"></td>\n        <td id=\"LC4639\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">sha256</span>(string, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>hex<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4640\" class=\"blob-num js-line-number\" data-line-number=\"4640\"></td>\n        <td id=\"LC4640\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4641\" class=\"blob-num js-line-number\" data-line-number=\"4641\"></td>\n        <td id=\"LC4641\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4642\" class=\"blob-num js-line-number\" data-line-number=\"4642\"></td>\n        <td id=\"LC4642\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">hexEncodedBodyHash</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">hexEncodedBodyHash</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4643\" class=\"blob-num js-line-number\" data-line-number=\"4643\"></td>\n        <td id=\"LC4643\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-en\">isPresigned</span>() <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">serviceName</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>s3<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4644\" class=\"blob-num js-line-number\" data-line-number=\"4644\"></td>\n        <td id=\"LC4644\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>UNSIGNED-PAYLOAD<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4645\" class=\"blob-num js-line-number\" data-line-number=\"4645\"></td>\n        <td id=\"LC4645\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Content-Sha256<span class=\"pl-pds\">&#39;</span></span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4646\" class=\"blob-num js-line-number\" data-line-number=\"4646\"></td>\n        <td id=\"LC4646\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>X-Amz-Content-Sha256<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4647\" class=\"blob-num js-line-number\" data-line-number=\"4647\"></td>\n        <td id=\"LC4647\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4648\" class=\"blob-num js-line-number\" data-line-number=\"4648\"></td>\n        <td id=\"LC4648\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">hexEncodedHash</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">body</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4649\" class=\"blob-num js-line-number\" data-line-number=\"4649\"></td>\n        <td id=\"LC4649\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4650\" class=\"blob-num js-line-number\" data-line-number=\"4650\"></td>\n        <td id=\"LC4650\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4651\" class=\"blob-num js-line-number\" data-line-number=\"4651\"></td>\n        <td id=\"LC4651\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4652\" class=\"blob-num js-line-number\" data-line-number=\"4652\"></td>\n        <td id=\"LC4652\" class=\"blob-code blob-code-inner js-file-line\">  unsignableHeaders<span class=\"pl-k\">:</span> [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>authorization<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>content-type<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>content-length<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4653\" class=\"blob-num js-line-number\" data-line-number=\"4653\"></td>\n        <td id=\"LC4653\" class=\"blob-code blob-code-inner js-file-line\">                      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>user-agent<span class=\"pl-pds\">&#39;</span></span>, expiresHeader],</td>\n      </tr>\n      <tr>\n        <td id=\"L4654\" class=\"blob-num js-line-number\" data-line-number=\"4654\"></td>\n        <td id=\"LC4654\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4655\" class=\"blob-num js-line-number\" data-line-number=\"4655\"></td>\n        <td id=\"LC4655\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">isSignableHeader</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">isSignableHeader</span>(<span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4656\" class=\"blob-num js-line-number\" data-line-number=\"4656\"></td>\n        <td id=\"LC4656\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">toLowerCase</span>().<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>x-amz-<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4657\" class=\"blob-num js-line-number\" data-line-number=\"4657\"></td>\n        <td id=\"LC4657\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">unsignableHeaders</span>.<span class=\"pl-c1\">indexOf</span>(key) <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4658\" class=\"blob-num js-line-number\" data-line-number=\"4658\"></td>\n        <td id=\"LC4658\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4659\" class=\"blob-num js-line-number\" data-line-number=\"4659\"></td>\n        <td id=\"LC4659\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4660\" class=\"blob-num js-line-number\" data-line-number=\"4660\"></td>\n        <td id=\"LC4660\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">isPresigned</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">isPresigned</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4661\" class=\"blob-num js-line-number\" data-line-number=\"4661\"></td>\n        <td id=\"LC4661\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">request</span>.<span class=\"pl-c1\">headers</span>[expiresHeader] <span class=\"pl-k\">?</span> <span class=\"pl-c1\">true</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4662\" class=\"blob-num js-line-number\" data-line-number=\"4662\"></td>\n        <td id=\"LC4662\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4663\" class=\"blob-num js-line-number\" data-line-number=\"4663\"></td>\n        <td id=\"LC4663\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4664\" class=\"blob-num js-line-number\" data-line-number=\"4664\"></td>\n        <td id=\"LC4664\" class=\"blob-code blob-code-inner js-file-line\">});</td>\n      </tr>\n      <tr>\n        <td id=\"L4665\" class=\"blob-num js-line-number\" data-line-number=\"4665\"></td>\n        <td id=\"LC4665\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4666\" class=\"blob-num js-line-number\" data-line-number=\"4666\"></td>\n        <td id=\"LC4666\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">Signers</span>.<span class=\"pl-c1\">V4</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4667\" class=\"blob-num js-line-number\" data-line-number=\"4667\"></td>\n        <td id=\"LC4667\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4668\" class=\"blob-num js-line-number\" data-line-number=\"4668\"></td>\n        <td id=\"LC4668\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>}],<span class=\"pl-c1\">43</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L4669\" class=\"blob-num js-line-number\" data-line-number=\"4669\"></td>\n        <td id=\"LC4669\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">AcceptorStateMachine</span>(<span class=\"pl-smi\">states</span>, <span class=\"pl-smi\">state</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4670\" class=\"blob-num js-line-number\" data-line-number=\"4670\"></td>\n        <td id=\"LC4670\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">currentState</span> <span class=\"pl-k\">=</span> state <span class=\"pl-k\">||</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4671\" class=\"blob-num js-line-number\" data-line-number=\"4671\"></td>\n        <td id=\"LC4671\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">states</span> <span class=\"pl-k\">=</span> states <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L4672\" class=\"blob-num js-line-number\" data-line-number=\"4672\"></td>\n        <td id=\"LC4672\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L4673\" class=\"blob-num js-line-number\" data-line-number=\"4673\"></td>\n        <td id=\"LC4673\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4674\" class=\"blob-num js-line-number\" data-line-number=\"4674\"></td>\n        <td id=\"LC4674\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">AcceptorStateMachine</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">runTo</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">runTo</span>(<span class=\"pl-smi\">finalState</span>, <span class=\"pl-smi\">done</span>, <span class=\"pl-smi\">bindObject</span>, <span class=\"pl-smi\">inputError</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4675\" class=\"blob-num js-line-number\" data-line-number=\"4675\"></td>\n        <td id=\"LC4675\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> finalState <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4676\" class=\"blob-num js-line-number\" data-line-number=\"4676\"></td>\n        <td id=\"LC4676\" class=\"blob-code blob-code-inner js-file-line\">    inputError <span class=\"pl-k\">=</span> bindObject; bindObject <span class=\"pl-k\">=</span> done;</td>\n      </tr>\n      <tr>\n        <td id=\"L4677\" class=\"blob-num js-line-number\" data-line-number=\"4677\"></td>\n        <td id=\"LC4677\" class=\"blob-code blob-code-inner js-file-line\">    done <span class=\"pl-k\">=</span> finalState; finalState <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4678\" class=\"blob-num js-line-number\" data-line-number=\"4678\"></td>\n        <td id=\"LC4678\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4679\" class=\"blob-num js-line-number\" data-line-number=\"4679\"></td>\n        <td id=\"LC4679\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4680\" class=\"blob-num js-line-number\" data-line-number=\"4680\"></td>\n        <td id=\"LC4680\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4681\" class=\"blob-num js-line-number\" data-line-number=\"4681\"></td>\n        <td id=\"LC4681\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> state <span class=\"pl-k\">=</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">states</span>[<span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">currentState</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4682\" class=\"blob-num js-line-number\" data-line-number=\"4682\"></td>\n        <td id=\"LC4682\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">state</span>.<span class=\"pl-smi\">fn</span>.<span class=\"pl-c1\">call</span>(bindObject <span class=\"pl-k\">||</span> self, inputError, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4683\" class=\"blob-num js-line-number\" data-line-number=\"4683\"></td>\n        <td id=\"LC4683\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4684\" class=\"blob-num js-line-number\" data-line-number=\"4684\"></td>\n        <td id=\"LC4684\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">state</span>.<span class=\"pl-smi\">fail</span>) <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">currentState</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">state</span>.<span class=\"pl-smi\">fail</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4685\" class=\"blob-num js-line-number\" data-line-number=\"4685\"></td>\n        <td id=\"LC4685\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">else</span> <span class=\"pl-k\">return</span> done <span class=\"pl-k\">?</span> <span class=\"pl-smi\">done</span>.<span class=\"pl-c1\">call</span>(bindObject, err) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4686\" class=\"blob-num js-line-number\" data-line-number=\"4686\"></td>\n        <td id=\"LC4686\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4687\" class=\"blob-num js-line-number\" data-line-number=\"4687\"></td>\n        <td id=\"LC4687\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">state</span>.<span class=\"pl-c1\">accept</span>) <span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">currentState</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">state</span>.<span class=\"pl-c1\">accept</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4688\" class=\"blob-num js-line-number\" data-line-number=\"4688\"></td>\n        <td id=\"LC4688\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">else</span> <span class=\"pl-k\">return</span> done <span class=\"pl-k\">?</span> <span class=\"pl-smi\">done</span>.<span class=\"pl-c1\">call</span>(bindObject) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4689\" class=\"blob-num js-line-number\" data-line-number=\"4689\"></td>\n        <td id=\"LC4689\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4690\" class=\"blob-num js-line-number\" data-line-number=\"4690\"></td>\n        <td id=\"LC4690\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">self</span>.<span class=\"pl-smi\">currentState</span> <span class=\"pl-k\">===</span> finalState) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4691\" class=\"blob-num js-line-number\" data-line-number=\"4691\"></td>\n        <td id=\"LC4691\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> done <span class=\"pl-k\">?</span> <span class=\"pl-smi\">done</span>.<span class=\"pl-c1\">call</span>(bindObject, err) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4692\" class=\"blob-num js-line-number\" data-line-number=\"4692\"></td>\n        <td id=\"LC4692\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4693\" class=\"blob-num js-line-number\" data-line-number=\"4693\"></td>\n        <td id=\"LC4693\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4694\" class=\"blob-num js-line-number\" data-line-number=\"4694\"></td>\n        <td id=\"LC4694\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">self</span>.<span class=\"pl-en\">runTo</span>(finalState, done, bindObject, err);</td>\n      </tr>\n      <tr>\n        <td id=\"L4695\" class=\"blob-num js-line-number\" data-line-number=\"4695\"></td>\n        <td id=\"LC4695\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L4696\" class=\"blob-num js-line-number\" data-line-number=\"4696\"></td>\n        <td id=\"LC4696\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L4697\" class=\"blob-num js-line-number\" data-line-number=\"4697\"></td>\n        <td id=\"LC4697\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4698\" class=\"blob-num js-line-number\" data-line-number=\"4698\"></td>\n        <td id=\"LC4698\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">AcceptorStateMachine</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">addState</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">addState</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">acceptState</span>, <span class=\"pl-smi\">failState</span>, <span class=\"pl-smi\">fn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4699\" class=\"blob-num js-line-number\" data-line-number=\"4699\"></td>\n        <td id=\"LC4699\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> acceptState <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4700\" class=\"blob-num js-line-number\" data-line-number=\"4700\"></td>\n        <td id=\"LC4700\" class=\"blob-code blob-code-inner js-file-line\">    fn <span class=\"pl-k\">=</span> acceptState; acceptState <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>; failState <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4701\" class=\"blob-num js-line-number\" data-line-number=\"4701\"></td>\n        <td id=\"LC4701\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> failState <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4702\" class=\"blob-num js-line-number\" data-line-number=\"4702\"></td>\n        <td id=\"LC4702\" class=\"blob-code blob-code-inner js-file-line\">    fn <span class=\"pl-k\">=</span> failState; failState <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4703\" class=\"blob-num js-line-number\" data-line-number=\"4703\"></td>\n        <td id=\"LC4703\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L4704\" class=\"blob-num js-line-number\" data-line-number=\"4704\"></td>\n        <td id=\"LC4704\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4705\" class=\"blob-num js-line-number\" data-line-number=\"4705\"></td>\n        <td id=\"LC4705\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">currentState</span>) <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">currentState</span> <span class=\"pl-k\">=</span> name;</td>\n      </tr>\n      <tr>\n        <td id=\"L4706\" class=\"blob-num js-line-number\" data-line-number=\"4706\"></td>\n        <td id=\"LC4706\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">states</span>[name] <span class=\"pl-k\">=</span> { accept<span class=\"pl-k\">:</span> acceptState, fail<span class=\"pl-k\">:</span> failState, fn<span class=\"pl-k\">:</span> fn };</td>\n      </tr>\n      <tr>\n        <td id=\"L4707\" class=\"blob-num js-line-number\" data-line-number=\"4707\"></td>\n        <td id=\"LC4707\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4708\" class=\"blob-num js-line-number\" data-line-number=\"4708\"></td>\n        <td id=\"LC4708\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L4709\" class=\"blob-num js-line-number\" data-line-number=\"4709\"></td>\n        <td id=\"LC4709\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4710\" class=\"blob-num js-line-number\" data-line-number=\"4710\"></td>\n        <td id=\"LC4710\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> AcceptorStateMachine;</td>\n      </tr>\n      <tr>\n        <td id=\"L4711\" class=\"blob-num js-line-number\" data-line-number=\"4711\"></td>\n        <td id=\"LC4711\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4712\" class=\"blob-num js-line-number\" data-line-number=\"4712\"></td>\n        <td id=\"LC4712\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">44</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L4713\" class=\"blob-num js-line-number\" data-line-number=\"4713\"></td>\n        <td id=\"LC4713\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span> (<span class=\"pl-c1\">process</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L4714\" class=\"blob-num js-line-number\" data-line-number=\"4714\"></td>\n        <td id=\"LC4714\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4715\" class=\"blob-num js-line-number\" data-line-number=\"4715\"></td>\n        <td id=\"LC4715\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4716\" class=\"blob-num js-line-number\" data-line-number=\"4716\"></td>\n        <td id=\"LC4716\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> cryptoLib <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>crypto<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4717\" class=\"blob-num js-line-number\" data-line-number=\"4717\"></td>\n        <td id=\"LC4717\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Buffer <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>buffer<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-smi\">Buffer</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4718\" class=\"blob-num js-line-number\" data-line-number=\"4718\"></td>\n        <td id=\"LC4718\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">AWS</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4719\" class=\"blob-num js-line-number\" data-line-number=\"4719\"></td>\n        <td id=\"LC4719\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4720\" class=\"blob-num js-line-number\" data-line-number=\"4720\"></td>\n        <td id=\"LC4720\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4721\" class=\"blob-num js-line-number\" data-line-number=\"4721\"></td>\n        <td id=\"LC4721\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4722\" class=\"blob-num js-line-number\" data-line-number=\"4722\"></td>\n        <td id=\"LC4722\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">engine</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">engine</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4723\" class=\"blob-num js-line-number\" data-line-number=\"4723\"></td>\n        <td id=\"LC4723\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isBrowser</span>() <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">navigator</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4724\" class=\"blob-num js-line-number\" data-line-number=\"4724\"></td>\n        <td id=\"LC4724\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">navigator</span>.<span class=\"pl-c1\">userAgent</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4725\" class=\"blob-num js-line-number\" data-line-number=\"4725\"></td>\n        <td id=\"LC4725\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4726\" class=\"blob-num js-line-number\" data-line-number=\"4726\"></td>\n        <td id=\"LC4726\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">process</span>.<span class=\"pl-c1\">platform</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">process</span>.<span class=\"pl-c1\">version</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4727\" class=\"blob-num js-line-number\" data-line-number=\"4727\"></td>\n        <td id=\"LC4727\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4728\" class=\"blob-num js-line-number\" data-line-number=\"4728\"></td>\n        <td id=\"LC4728\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4729\" class=\"blob-num js-line-number\" data-line-number=\"4729\"></td>\n        <td id=\"LC4729\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4730\" class=\"blob-num js-line-number\" data-line-number=\"4730\"></td>\n        <td id=\"LC4730\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">userAgent</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">userAgent</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4731\" class=\"blob-num js-line-number\" data-line-number=\"4731\"></td>\n        <td id=\"LC4731\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isBrowser</span>() <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>js<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>nodejs<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4732\" class=\"blob-num js-line-number\" data-line-number=\"4732\"></td>\n        <td id=\"LC4732\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> agent <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>aws-sdk-<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> name <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">VERSION</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4733\" class=\"blob-num js-line-number\" data-line-number=\"4733\"></td>\n        <td id=\"LC4733\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>nodejs<span class=\"pl-pds\">&#39;</span></span>) agent <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">engine</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4734\" class=\"blob-num js-line-number\" data-line-number=\"4734\"></td>\n        <td id=\"LC4734\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> agent;</td>\n      </tr>\n      <tr>\n        <td id=\"L4735\" class=\"blob-num js-line-number\" data-line-number=\"4735\"></td>\n        <td id=\"LC4735\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4736\" class=\"blob-num js-line-number\" data-line-number=\"4736\"></td>\n        <td id=\"LC4736\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4737\" class=\"blob-num js-line-number\" data-line-number=\"4737\"></td>\n        <td id=\"LC4737\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">isBrowser</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">isBrowser</span>() { <span class=\"pl-k\">return</span> <span class=\"pl-c1\">process</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">browser</span>; },</td>\n      </tr>\n      <tr>\n        <td id=\"L4738\" class=\"blob-num js-line-number\" data-line-number=\"4738\"></td>\n        <td id=\"LC4738\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">isNode</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">isNode</span>() { <span class=\"pl-k\">return</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isBrowser</span>(); },</td>\n      </tr>\n      <tr>\n        <td id=\"L4739\" class=\"blob-num js-line-number\" data-line-number=\"4739\"></td>\n        <td id=\"LC4739\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">nodeRequire</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">nodeRequire</span>(<span class=\"pl-c1\">module</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4740\" class=\"blob-num js-line-number\" data-line-number=\"4740\"></td>\n        <td id=\"LC4740\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isNode</span>()) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-c1\">module</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4741\" class=\"blob-num js-line-number\" data-line-number=\"4741\"></td>\n        <td id=\"LC4741\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4742\" class=\"blob-num js-line-number\" data-line-number=\"4742\"></td>\n        <td id=\"LC4742\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">multiRequire</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">multiRequire</span>(<span class=\"pl-smi\">module1</span>, <span class=\"pl-smi\">module2</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4743\" class=\"blob-num js-line-number\" data-line-number=\"4743\"></td>\n        <td id=\"LC4743\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isNode</span>() <span class=\"pl-k\">?</span> module1 <span class=\"pl-k\">:</span> module2);</td>\n      </tr>\n      <tr>\n        <td id=\"L4744\" class=\"blob-num js-line-number\" data-line-number=\"4744\"></td>\n        <td id=\"LC4744\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4745\" class=\"blob-num js-line-number\" data-line-number=\"4745\"></td>\n        <td id=\"LC4745\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4746\" class=\"blob-num js-line-number\" data-line-number=\"4746\"></td>\n        <td id=\"LC4746\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">uriEscape</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">uriEscape</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4747\" class=\"blob-num js-line-number\" data-line-number=\"4747\"></td>\n        <td id=\"LC4747\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> output <span class=\"pl-k\">=</span> <span class=\"pl-c1\">encodeURIComponent</span>(string);</td>\n      </tr>\n      <tr>\n        <td id=\"L4748\" class=\"blob-num js-line-number\" data-line-number=\"4748\"></td>\n        <td id=\"LC4748\" class=\"blob-code blob-code-inner js-file-line\">    output <span class=\"pl-k\">=</span> <span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-c1\">[<span class=\"pl-k\">^</span><span class=\"pl-c1\">A-Za-z0-9</span>_<span class=\"pl-c1\">.</span>~<span class=\"pl-c1\">\\-%</span>]</span><span class=\"pl-k\">+</span><span class=\"pl-pds\">/</span>g</span>, escape);</td>\n      </tr>\n      <tr>\n        <td id=\"L4749\" class=\"blob-num js-line-number\" data-line-number=\"4749\"></td>\n        <td id=\"LC4749\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4750\" class=\"blob-num js-line-number\" data-line-number=\"4750\"></td>\n        <td id=\"LC4750\" class=\"blob-code blob-code-inner js-file-line\">    output <span class=\"pl-k\">=</span> <span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-c1\">[*]</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">ch</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4751\" class=\"blob-num js-line-number\" data-line-number=\"4751\"></td>\n        <td id=\"LC4751\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">ch</span>.<span class=\"pl-c1\">charCodeAt</span>(<span class=\"pl-c1\">0</span>).<span class=\"pl-c1\">toString</span>(<span class=\"pl-c1\">16</span>).<span class=\"pl-c1\">toUpperCase</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4752\" class=\"blob-num js-line-number\" data-line-number=\"4752\"></td>\n        <td id=\"LC4752\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4753\" class=\"blob-num js-line-number\" data-line-number=\"4753\"></td>\n        <td id=\"LC4753\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4754\" class=\"blob-num js-line-number\" data-line-number=\"4754\"></td>\n        <td id=\"LC4754\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> output;</td>\n      </tr>\n      <tr>\n        <td id=\"L4755\" class=\"blob-num js-line-number\" data-line-number=\"4755\"></td>\n        <td id=\"LC4755\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4756\" class=\"blob-num js-line-number\" data-line-number=\"4756\"></td>\n        <td id=\"LC4756\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4757\" class=\"blob-num js-line-number\" data-line-number=\"4757\"></td>\n        <td id=\"LC4757\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">uriEscapePath</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">uriEscapePath</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4758\" class=\"blob-num js-line-number\" data-line-number=\"4758\"></td>\n        <td id=\"LC4758\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> parts <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4759\" class=\"blob-num js-line-number\" data-line-number=\"4759\"></td>\n        <td id=\"LC4759\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(<span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>), <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">part</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4760\" class=\"blob-num js-line-number\" data-line-number=\"4760\"></td>\n        <td id=\"LC4760\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">uriEscape</span>(part));</td>\n      </tr>\n      <tr>\n        <td id=\"L4761\" class=\"blob-num js-line-number\" data-line-number=\"4761\"></td>\n        <td id=\"LC4761\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4762\" class=\"blob-num js-line-number\" data-line-number=\"4762\"></td>\n        <td id=\"LC4762\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">parts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4763\" class=\"blob-num js-line-number\" data-line-number=\"4763\"></td>\n        <td id=\"LC4763\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4764\" class=\"blob-num js-line-number\" data-line-number=\"4764\"></td>\n        <td id=\"LC4764\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4765\" class=\"blob-num js-line-number\" data-line-number=\"4765\"></td>\n        <td id=\"LC4765\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">urlParse</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">urlParse</span>(<span class=\"pl-smi\">url</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4766\" class=\"blob-num js-line-number\" data-line-number=\"4766\"></td>\n        <td id=\"LC4766\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>url<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">parse</span>(url);</td>\n      </tr>\n      <tr>\n        <td id=\"L4767\" class=\"blob-num js-line-number\" data-line-number=\"4767\"></td>\n        <td id=\"LC4767\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4768\" class=\"blob-num js-line-number\" data-line-number=\"4768\"></td>\n        <td id=\"LC4768\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4769\" class=\"blob-num js-line-number\" data-line-number=\"4769\"></td>\n        <td id=\"LC4769\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">urlFormat</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">urlFormat</span>(<span class=\"pl-smi\">url</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4770\" class=\"blob-num js-line-number\" data-line-number=\"4770\"></td>\n        <td id=\"LC4770\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>url<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-en\">format</span>(url);</td>\n      </tr>\n      <tr>\n        <td id=\"L4771\" class=\"blob-num js-line-number\" data-line-number=\"4771\"></td>\n        <td id=\"LC4771\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4772\" class=\"blob-num js-line-number\" data-line-number=\"4772\"></td>\n        <td id=\"LC4772\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4773\" class=\"blob-num js-line-number\" data-line-number=\"4773\"></td>\n        <td id=\"LC4773\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">queryStringParse</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">queryStringParse</span>(<span class=\"pl-smi\">qs</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4774\" class=\"blob-num js-line-number\" data-line-number=\"4774\"></td>\n        <td id=\"LC4774\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>querystring<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">parse</span>(qs);</td>\n      </tr>\n      <tr>\n        <td id=\"L4775\" class=\"blob-num js-line-number\" data-line-number=\"4775\"></td>\n        <td id=\"LC4775\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4776\" class=\"blob-num js-line-number\" data-line-number=\"4776\"></td>\n        <td id=\"LC4776\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4777\" class=\"blob-num js-line-number\" data-line-number=\"4777\"></td>\n        <td id=\"LC4777\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">queryParamsToString</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">queryParamsToString</span>(<span class=\"pl-smi\">params</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4778\" class=\"blob-num js-line-number\" data-line-number=\"4778\"></td>\n        <td id=\"LC4778\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> items <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4779\" class=\"blob-num js-line-number\" data-line-number=\"4779\"></td>\n        <td id=\"LC4779\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> escape <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">uriEscape</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4780\" class=\"blob-num js-line-number\" data-line-number=\"4780\"></td>\n        <td id=\"LC4780\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> sortedKeys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(params).<span class=\"pl-c1\">sort</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4781\" class=\"blob-num js-line-number\" data-line-number=\"4781\"></td>\n        <td id=\"LC4781\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4782\" class=\"blob-num js-line-number\" data-line-number=\"4782\"></td>\n        <td id=\"LC4782\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(sortedKeys, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4783\" class=\"blob-num js-line-number\" data-line-number=\"4783\"></td>\n        <td id=\"LC4783\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> params[name];</td>\n      </tr>\n      <tr>\n        <td id=\"L4784\" class=\"blob-num js-line-number\" data-line-number=\"4784\"></td>\n        <td id=\"LC4784\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> ename <span class=\"pl-k\">=</span> <span class=\"pl-c1\">escape</span>(name);</td>\n      </tr>\n      <tr>\n        <td id=\"L4785\" class=\"blob-num js-line-number\" data-line-number=\"4785\"></td>\n        <td id=\"LC4785\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> ename <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4786\" class=\"blob-num js-line-number\" data-line-number=\"4786\"></td>\n        <td id=\"LC4786\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">Array</span>.<span class=\"pl-en\">isArray</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4787\" class=\"blob-num js-line-number\" data-line-number=\"4787\"></td>\n        <td id=\"LC4787\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> vals <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4788\" class=\"blob-num js-line-number\" data-line-number=\"4788\"></td>\n        <td id=\"LC4788\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(value, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">item</span>) { <span class=\"pl-smi\">vals</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-c1\">escape</span>(item)); });</td>\n      </tr>\n      <tr>\n        <td id=\"L4789\" class=\"blob-num js-line-number\" data-line-number=\"4789\"></td>\n        <td id=\"LC4789\" class=\"blob-code blob-code-inner js-file-line\">        result <span class=\"pl-k\">=</span> ename <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">vals</span>.<span class=\"pl-c1\">sort</span>().<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> ename <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4790\" class=\"blob-num js-line-number\" data-line-number=\"4790\"></td>\n        <td id=\"LC4790\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4791\" class=\"blob-num js-line-number\" data-line-number=\"4791\"></td>\n        <td id=\"LC4791\" class=\"blob-code blob-code-inner js-file-line\">        result <span class=\"pl-k\">=</span> ename <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">escape</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L4792\" class=\"blob-num js-line-number\" data-line-number=\"4792\"></td>\n        <td id=\"LC4792\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L4793\" class=\"blob-num js-line-number\" data-line-number=\"4793\"></td>\n        <td id=\"LC4793\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">items</span>.<span class=\"pl-c1\">push</span>(result);</td>\n      </tr>\n      <tr>\n        <td id=\"L4794\" class=\"blob-num js-line-number\" data-line-number=\"4794\"></td>\n        <td id=\"LC4794\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L4795\" class=\"blob-num js-line-number\" data-line-number=\"4795\"></td>\n        <td id=\"LC4795\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4796\" class=\"blob-num js-line-number\" data-line-number=\"4796\"></td>\n        <td id=\"LC4796\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">items</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4797\" class=\"blob-num js-line-number\" data-line-number=\"4797\"></td>\n        <td id=\"LC4797\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4798\" class=\"blob-num js-line-number\" data-line-number=\"4798\"></td>\n        <td id=\"LC4798\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4799\" class=\"blob-num js-line-number\" data-line-number=\"4799\"></td>\n        <td id=\"LC4799\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">readFileSync</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">readFileSync</span>(<span class=\"pl-smi\">path</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4800\" class=\"blob-num js-line-number\" data-line-number=\"4800\"></td>\n        <td id=\"LC4800\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4801\" class=\"blob-num js-line-number\" data-line-number=\"4801\"></td>\n        <td id=\"LC4801\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">nodeRequire</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>fs<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-en\">readFileSync</span>(path, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf-8<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4802\" class=\"blob-num js-line-number\" data-line-number=\"4802\"></td>\n        <td id=\"LC4802\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4803\" class=\"blob-num js-line-number\" data-line-number=\"4803\"></td>\n        <td id=\"LC4803\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4804\" class=\"blob-num js-line-number\" data-line-number=\"4804\"></td>\n        <td id=\"LC4804\" class=\"blob-code blob-code-inner js-file-line\">  base64<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4805\" class=\"blob-num js-line-number\" data-line-number=\"4805\"></td>\n        <td id=\"LC4805\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4806\" class=\"blob-num js-line-number\" data-line-number=\"4806\"></td>\n        <td id=\"LC4806\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">encode</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">encode64</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4807\" class=\"blob-num js-line-number\" data-line-number=\"4807\"></td>\n        <td id=\"LC4807\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(string).<span class=\"pl-c1\">toString</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4808\" class=\"blob-num js-line-number\" data-line-number=\"4808\"></td>\n        <td id=\"LC4808\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L4809\" class=\"blob-num js-line-number\" data-line-number=\"4809\"></td>\n        <td id=\"LC4809\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4810\" class=\"blob-num js-line-number\" data-line-number=\"4810\"></td>\n        <td id=\"LC4810\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">decode</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">decode64</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4811\" class=\"blob-num js-line-number\" data-line-number=\"4811\"></td>\n        <td id=\"LC4811\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(string, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4812\" class=\"blob-num js-line-number\" data-line-number=\"4812\"></td>\n        <td id=\"LC4812\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4813\" class=\"blob-num js-line-number\" data-line-number=\"4813\"></td>\n        <td id=\"LC4813\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4814\" class=\"blob-num js-line-number\" data-line-number=\"4814\"></td>\n        <td id=\"LC4814\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4815\" class=\"blob-num js-line-number\" data-line-number=\"4815\"></td>\n        <td id=\"LC4815\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4816\" class=\"blob-num js-line-number\" data-line-number=\"4816\"></td>\n        <td id=\"LC4816\" class=\"blob-code blob-code-inner js-file-line\">  Buffer<span class=\"pl-k\">:</span> Buffer,</td>\n      </tr>\n      <tr>\n        <td id=\"L4817\" class=\"blob-num js-line-number\" data-line-number=\"4817\"></td>\n        <td id=\"LC4817\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4818\" class=\"blob-num js-line-number\" data-line-number=\"4818\"></td>\n        <td id=\"LC4818\" class=\"blob-code blob-code-inner js-file-line\">  buffer<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4819\" class=\"blob-num js-line-number\" data-line-number=\"4819\"></td>\n        <td id=\"LC4819\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">toStream</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">toStream</span>(<span class=\"pl-smi\">buffer</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4820\" class=\"blob-num js-line-number\" data-line-number=\"4820\"></td>\n        <td id=\"LC4820\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">isBuffer</span>(buffer)) buffer <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">util.Buffer</span>(buffer);</td>\n      </tr>\n      <tr>\n        <td id=\"L4821\" class=\"blob-num js-line-number\" data-line-number=\"4821\"></td>\n        <td id=\"LC4821\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4822\" class=\"blob-num js-line-number\" data-line-number=\"4822\"></td>\n        <td id=\"LC4822\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> readable <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> (<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">nodeRequire</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>stream<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-smi\">Readable</span>)();</td>\n      </tr>\n      <tr>\n        <td id=\"L4823\" class=\"blob-num js-line-number\" data-line-number=\"4823\"></td>\n        <td id=\"LC4823\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> pos <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4824\" class=\"blob-num js-line-number\" data-line-number=\"4824\"></td>\n        <td id=\"LC4824\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">readable</span>.<span class=\"pl-en\">_read</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">size</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4825\" class=\"blob-num js-line-number\" data-line-number=\"4825\"></td>\n        <td id=\"LC4825\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (pos <span class=\"pl-k\">&gt;=</span> <span class=\"pl-smi\">buffer</span>.<span class=\"pl-c1\">length</span>) <span class=\"pl-k\">return</span> <span class=\"pl-smi\">readable</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-c1\">null</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4826\" class=\"blob-num js-line-number\" data-line-number=\"4826\"></td>\n        <td id=\"LC4826\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4827\" class=\"blob-num js-line-number\" data-line-number=\"4827\"></td>\n        <td id=\"LC4827\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> end <span class=\"pl-k\">=</span> pos <span class=\"pl-k\">+</span> size;</td>\n      </tr>\n      <tr>\n        <td id=\"L4828\" class=\"blob-num js-line-number\" data-line-number=\"4828\"></td>\n        <td id=\"LC4828\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (end <span class=\"pl-k\">&gt;</span> <span class=\"pl-smi\">buffer</span>.<span class=\"pl-c1\">length</span>) end <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buffer</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4829\" class=\"blob-num js-line-number\" data-line-number=\"4829\"></td>\n        <td id=\"LC4829\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">readable</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">buffer</span>.<span class=\"pl-c1\">slice</span>(pos, end));</td>\n      </tr>\n      <tr>\n        <td id=\"L4830\" class=\"blob-num js-line-number\" data-line-number=\"4830\"></td>\n        <td id=\"LC4830\" class=\"blob-code blob-code-inner js-file-line\">        pos <span class=\"pl-k\">=</span> end;</td>\n      </tr>\n      <tr>\n        <td id=\"L4831\" class=\"blob-num js-line-number\" data-line-number=\"4831\"></td>\n        <td id=\"LC4831\" class=\"blob-code blob-code-inner js-file-line\">      };</td>\n      </tr>\n      <tr>\n        <td id=\"L4832\" class=\"blob-num js-line-number\" data-line-number=\"4832\"></td>\n        <td id=\"LC4832\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4833\" class=\"blob-num js-line-number\" data-line-number=\"4833\"></td>\n        <td id=\"LC4833\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> readable;</td>\n      </tr>\n      <tr>\n        <td id=\"L4834\" class=\"blob-num js-line-number\" data-line-number=\"4834\"></td>\n        <td id=\"LC4834\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L4835\" class=\"blob-num js-line-number\" data-line-number=\"4835\"></td>\n        <td id=\"LC4835\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4836\" class=\"blob-num js-line-number\" data-line-number=\"4836\"></td>\n        <td id=\"LC4836\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4837\" class=\"blob-num js-line-number\" data-line-number=\"4837\"></td>\n        <td id=\"LC4837\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">concat</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">buffers</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4838\" class=\"blob-num js-line-number\" data-line-number=\"4838\"></td>\n        <td id=\"LC4838\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4839\" class=\"blob-num js-line-number\" data-line-number=\"4839\"></td>\n        <td id=\"LC4839\" class=\"blob-code blob-code-inner js-file-line\">          offset <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L4840\" class=\"blob-num js-line-number\" data-line-number=\"4840\"></td>\n        <td id=\"LC4840\" class=\"blob-code blob-code-inner js-file-line\">          buffer <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>, i;</td>\n      </tr>\n      <tr>\n        <td id=\"L4841\" class=\"blob-num js-line-number\" data-line-number=\"4841\"></td>\n        <td id=\"LC4841\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4842\" class=\"blob-num js-line-number\" data-line-number=\"4842\"></td>\n        <td id=\"LC4842\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buffers</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4843\" class=\"blob-num js-line-number\" data-line-number=\"4843\"></td>\n        <td id=\"LC4843\" class=\"blob-code blob-code-inner js-file-line\">        length <span class=\"pl-k\">+=</span> buffers[i].<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4844\" class=\"blob-num js-line-number\" data-line-number=\"4844\"></td>\n        <td id=\"LC4844\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L4845\" class=\"blob-num js-line-number\" data-line-number=\"4845\"></td>\n        <td id=\"LC4845\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4846\" class=\"blob-num js-line-number\" data-line-number=\"4846\"></td>\n        <td id=\"LC4846\" class=\"blob-code blob-code-inner js-file-line\">      buffer <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(length);</td>\n      </tr>\n      <tr>\n        <td id=\"L4847\" class=\"blob-num js-line-number\" data-line-number=\"4847\"></td>\n        <td id=\"LC4847\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4848\" class=\"blob-num js-line-number\" data-line-number=\"4848\"></td>\n        <td id=\"LC4848\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buffers</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4849\" class=\"blob-num js-line-number\" data-line-number=\"4849\"></td>\n        <td id=\"LC4849\" class=\"blob-code blob-code-inner js-file-line\">        buffers[i].<span class=\"pl-en\">copy</span>(buffer, offset);</td>\n      </tr>\n      <tr>\n        <td id=\"L4850\" class=\"blob-num js-line-number\" data-line-number=\"4850\"></td>\n        <td id=\"LC4850\" class=\"blob-code blob-code-inner js-file-line\">        offset <span class=\"pl-k\">+=</span> buffers[i].<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4851\" class=\"blob-num js-line-number\" data-line-number=\"4851\"></td>\n        <td id=\"LC4851\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L4852\" class=\"blob-num js-line-number\" data-line-number=\"4852\"></td>\n        <td id=\"LC4852\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4853\" class=\"blob-num js-line-number\" data-line-number=\"4853\"></td>\n        <td id=\"LC4853\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> buffer;</td>\n      </tr>\n      <tr>\n        <td id=\"L4854\" class=\"blob-num js-line-number\" data-line-number=\"4854\"></td>\n        <td id=\"LC4854\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4855\" class=\"blob-num js-line-number\" data-line-number=\"4855\"></td>\n        <td id=\"LC4855\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4856\" class=\"blob-num js-line-number\" data-line-number=\"4856\"></td>\n        <td id=\"LC4856\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4857\" class=\"blob-num js-line-number\" data-line-number=\"4857\"></td>\n        <td id=\"LC4857\" class=\"blob-code blob-code-inner js-file-line\">  string<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4858\" class=\"blob-num js-line-number\" data-line-number=\"4858\"></td>\n        <td id=\"LC4858\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">byteLength</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">byteLength</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4859\" class=\"blob-num js-line-number\" data-line-number=\"4859\"></td>\n        <td id=\"LC4859\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (string <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> string <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4860\" class=\"blob-num js-line-number\" data-line-number=\"4860\"></td>\n        <td id=\"LC4860\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> string <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) string <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(string);</td>\n      </tr>\n      <tr>\n        <td id=\"L4861\" class=\"blob-num js-line-number\" data-line-number=\"4861\"></td>\n        <td id=\"LC4861\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4862\" class=\"blob-num js-line-number\" data-line-number=\"4862\"></td>\n        <td id=\"LC4862\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-smi\">byteLength</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4863\" class=\"blob-num js-line-number\" data-line-number=\"4863\"></td>\n        <td id=\"LC4863\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-smi\">byteLength</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4864\" class=\"blob-num js-line-number\" data-line-number=\"4864\"></td>\n        <td id=\"LC4864\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4865\" class=\"blob-num js-line-number\" data-line-number=\"4865\"></td>\n        <td id=\"LC4865\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4866\" class=\"blob-num js-line-number\" data-line-number=\"4866\"></td>\n        <td id=\"LC4866\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">size</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4867\" class=\"blob-num js-line-number\" data-line-number=\"4867\"></td>\n        <td id=\"LC4867\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">size</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4868\" class=\"blob-num js-line-number\" data-line-number=\"4868\"></td>\n        <td id=\"LC4868\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4869\" class=\"blob-num js-line-number\" data-line-number=\"4869\"></td>\n        <td id=\"LC4869\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">nodeRequire</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>fs<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-en\">lstatSync</span>(<span class=\"pl-smi\">string</span>.<span class=\"pl-smi\">path</span>).<span class=\"pl-c1\">size</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4870\" class=\"blob-num js-line-number\" data-line-number=\"4870\"></td>\n        <td id=\"LC4870\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4871\" class=\"blob-num js-line-number\" data-line-number=\"4871\"></td>\n        <td id=\"LC4871\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Cannot determine length of <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> string),</td>\n      </tr>\n      <tr>\n        <td id=\"L4872\" class=\"blob-num js-line-number\" data-line-number=\"4872\"></td>\n        <td id=\"LC4872\" class=\"blob-code blob-code-inner js-file-line\">          { object<span class=\"pl-k\">:</span> string });</td>\n      </tr>\n      <tr>\n        <td id=\"L4873\" class=\"blob-num js-line-number\" data-line-number=\"4873\"></td>\n        <td id=\"LC4873\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L4874\" class=\"blob-num js-line-number\" data-line-number=\"4874\"></td>\n        <td id=\"LC4874\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L4875\" class=\"blob-num js-line-number\" data-line-number=\"4875\"></td>\n        <td id=\"LC4875\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4876\" class=\"blob-num js-line-number\" data-line-number=\"4876\"></td>\n        <td id=\"LC4876\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">upperFirst</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">upperFirst</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4877\" class=\"blob-num js-line-number\" data-line-number=\"4877\"></td>\n        <td id=\"LC4877\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> string[<span class=\"pl-c1\">0</span>].<span class=\"pl-c1\">toUpperCase</span>() <span class=\"pl-k\">+</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4878\" class=\"blob-num js-line-number\" data-line-number=\"4878\"></td>\n        <td id=\"LC4878\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L4879\" class=\"blob-num js-line-number\" data-line-number=\"4879\"></td>\n        <td id=\"LC4879\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4880\" class=\"blob-num js-line-number\" data-line-number=\"4880\"></td>\n        <td id=\"LC4880\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">lowerFirst</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">lowerFirst</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4881\" class=\"blob-num js-line-number\" data-line-number=\"4881\"></td>\n        <td id=\"LC4881\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> string[<span class=\"pl-c1\">0</span>].<span class=\"pl-c1\">toLowerCase</span>() <span class=\"pl-k\">+</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4882\" class=\"blob-num js-line-number\" data-line-number=\"4882\"></td>\n        <td id=\"LC4882\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4883\" class=\"blob-num js-line-number\" data-line-number=\"4883\"></td>\n        <td id=\"LC4883\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4884\" class=\"blob-num js-line-number\" data-line-number=\"4884\"></td>\n        <td id=\"LC4884\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4885\" class=\"blob-num js-line-number\" data-line-number=\"4885\"></td>\n        <td id=\"LC4885\" class=\"blob-code blob-code-inner js-file-line\">  ini<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4886\" class=\"blob-num js-line-number\" data-line-number=\"4886\"></td>\n        <td id=\"LC4886\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">parse</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">string</span>(<span class=\"pl-smi\">ini</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4887\" class=\"blob-num js-line-number\" data-line-number=\"4887\"></td>\n        <td id=\"LC4887\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> currentSection, map <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L4888\" class=\"blob-num js-line-number\" data-line-number=\"4888\"></td>\n        <td id=\"LC4888\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(<span class=\"pl-smi\">ini</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\r</span><span class=\"pl-k\">?</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">/</span></span>), <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">line</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4889\" class=\"blob-num js-line-number\" data-line-number=\"4889\"></td>\n        <td id=\"LC4889\" class=\"blob-code blob-code-inner js-file-line\">        line <span class=\"pl-k\">=</span> <span class=\"pl-smi\">line</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>(<span class=\"pl-k\">^</span><span class=\"pl-k\">|</span><span class=\"pl-c1\">\\s</span>);<span class=\"pl-pds\">/</span></span>)[<span class=\"pl-c1\">0</span>]; <span class=\"pl-c\">// remove comments</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4890\" class=\"blob-num js-line-number\" data-line-number=\"4890\"></td>\n        <td id=\"LC4890\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> section <span class=\"pl-k\">=</span> <span class=\"pl-smi\">line</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">*</span><span class=\"pl-cce\">\\[</span>(<span class=\"pl-c1\">[<span class=\"pl-k\">^</span><span class=\"pl-cce\">\\[\\]</span>]</span><span class=\"pl-k\">+</span>)<span class=\"pl-cce\">\\]</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">*</span><span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4891\" class=\"blob-num js-line-number\" data-line-number=\"4891\"></td>\n        <td id=\"LC4891\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (section) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4892\" class=\"blob-num js-line-number\" data-line-number=\"4892\"></td>\n        <td id=\"LC4892\" class=\"blob-code blob-code-inner js-file-line\">          currentSection <span class=\"pl-k\">=</span> section[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4893\" class=\"blob-num js-line-number\" data-line-number=\"4893\"></td>\n        <td id=\"LC4893\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (currentSection) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4894\" class=\"blob-num js-line-number\" data-line-number=\"4894\"></td>\n        <td id=\"LC4894\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> item <span class=\"pl-k\">=</span> <span class=\"pl-smi\">line</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">*</span>(<span class=\"pl-c1\">.</span><span class=\"pl-k\">+?</span>)<span class=\"pl-c1\">\\s</span><span class=\"pl-k\">*</span>=<span class=\"pl-c1\">\\s</span><span class=\"pl-k\">*</span>(<span class=\"pl-c1\">.</span><span class=\"pl-k\">+?</span>)<span class=\"pl-c1\">\\s</span><span class=\"pl-k\">*</span><span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4895\" class=\"blob-num js-line-number\" data-line-number=\"4895\"></td>\n        <td id=\"LC4895\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (item) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4896\" class=\"blob-num js-line-number\" data-line-number=\"4896\"></td>\n        <td id=\"LC4896\" class=\"blob-code blob-code-inner js-file-line\">            map[currentSection] <span class=\"pl-k\">=</span> map[currentSection] <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L4897\" class=\"blob-num js-line-number\" data-line-number=\"4897\"></td>\n        <td id=\"LC4897\" class=\"blob-code blob-code-inner js-file-line\">            map[currentSection][item[<span class=\"pl-c1\">1</span>]] <span class=\"pl-k\">=</span> item[<span class=\"pl-c1\">2</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4898\" class=\"blob-num js-line-number\" data-line-number=\"4898\"></td>\n        <td id=\"LC4898\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L4899\" class=\"blob-num js-line-number\" data-line-number=\"4899\"></td>\n        <td id=\"LC4899\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L4900\" class=\"blob-num js-line-number\" data-line-number=\"4900\"></td>\n        <td id=\"LC4900\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L4901\" class=\"blob-num js-line-number\" data-line-number=\"4901\"></td>\n        <td id=\"LC4901\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4902\" class=\"blob-num js-line-number\" data-line-number=\"4902\"></td>\n        <td id=\"LC4902\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> map;</td>\n      </tr>\n      <tr>\n        <td id=\"L4903\" class=\"blob-num js-line-number\" data-line-number=\"4903\"></td>\n        <td id=\"LC4903\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4904\" class=\"blob-num js-line-number\" data-line-number=\"4904\"></td>\n        <td id=\"LC4904\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4905\" class=\"blob-num js-line-number\" data-line-number=\"4905\"></td>\n        <td id=\"LC4905\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4906\" class=\"blob-num js-line-number\" data-line-number=\"4906\"></td>\n        <td id=\"LC4906\" class=\"blob-code blob-code-inner js-file-line\">  fn<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4907\" class=\"blob-num js-line-number\" data-line-number=\"4907\"></td>\n        <td id=\"LC4907\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">noop</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>() {},</td>\n      </tr>\n      <tr>\n        <td id=\"L4908\" class=\"blob-num js-line-number\" data-line-number=\"4908\"></td>\n        <td id=\"LC4908\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4909\" class=\"blob-num js-line-number\" data-line-number=\"4909\"></td>\n        <td id=\"LC4909\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4910\" class=\"blob-num js-line-number\" data-line-number=\"4910\"></td>\n        <td id=\"LC4910\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">makeAsync</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">makeAsync</span>(<span class=\"pl-smi\">fn</span>, <span class=\"pl-smi\">expectedArgs</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4911\" class=\"blob-num js-line-number\" data-line-number=\"4911\"></td>\n        <td id=\"LC4911\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (expectedArgs <span class=\"pl-k\">&amp;&amp;</span> expectedArgs <span class=\"pl-k\">&lt;=</span> <span class=\"pl-smi\">fn</span>.<span class=\"pl-c1\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4912\" class=\"blob-num js-line-number\" data-line-number=\"4912\"></td>\n        <td id=\"LC4912\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> fn;</td>\n      </tr>\n      <tr>\n        <td id=\"L4913\" class=\"blob-num js-line-number\" data-line-number=\"4913\"></td>\n        <td id=\"LC4913\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L4914\" class=\"blob-num js-line-number\" data-line-number=\"4914\"></td>\n        <td id=\"LC4914\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4915\" class=\"blob-num js-line-number\" data-line-number=\"4915\"></td>\n        <td id=\"LC4915\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4916\" class=\"blob-num js-line-number\" data-line-number=\"4916\"></td>\n        <td id=\"LC4916\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> args <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Array</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">slice</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">arguments</span>, <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4917\" class=\"blob-num js-line-number\" data-line-number=\"4917\"></td>\n        <td id=\"LC4917\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> callback <span class=\"pl-k\">=</span> <span class=\"pl-smi\">args</span>.<span class=\"pl-c1\">pop</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4918\" class=\"blob-num js-line-number\" data-line-number=\"4918\"></td>\n        <td id=\"LC4918\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-smi\">fn</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-c1\">null</span>, args);</td>\n      </tr>\n      <tr>\n        <td id=\"L4919\" class=\"blob-num js-line-number\" data-line-number=\"4919\"></td>\n        <td id=\"LC4919\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">callback</span>(result);</td>\n      </tr>\n      <tr>\n        <td id=\"L4920\" class=\"blob-num js-line-number\" data-line-number=\"4920\"></td>\n        <td id=\"LC4920\" class=\"blob-code blob-code-inner js-file-line\">      };</td>\n      </tr>\n      <tr>\n        <td id=\"L4921\" class=\"blob-num js-line-number\" data-line-number=\"4921\"></td>\n        <td id=\"LC4921\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4922\" class=\"blob-num js-line-number\" data-line-number=\"4922\"></td>\n        <td id=\"LC4922\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4923\" class=\"blob-num js-line-number\" data-line-number=\"4923\"></td>\n        <td id=\"LC4923\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4924\" class=\"blob-num js-line-number\" data-line-number=\"4924\"></td>\n        <td id=\"LC4924\" class=\"blob-code blob-code-inner js-file-line\">  jamespath<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4925\" class=\"blob-num js-line-number\" data-line-number=\"4925\"></td>\n        <td id=\"LC4925\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">query</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">query</span>(<span class=\"pl-smi\">expression</span>, <span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4926\" class=\"blob-num js-line-number\" data-line-number=\"4926\"></td>\n        <td id=\"LC4926\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>data) <span class=\"pl-k\">return</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4927\" class=\"blob-num js-line-number\" data-line-number=\"4927\"></td>\n        <td id=\"LC4927\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4928\" class=\"blob-num js-line-number\" data-line-number=\"4928\"></td>\n        <td id=\"LC4928\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> results <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4929\" class=\"blob-num js-line-number\" data-line-number=\"4929\"></td>\n        <td id=\"LC4929\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> expressions <span class=\"pl-k\">=</span> <span class=\"pl-smi\">expression</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">+</span><span class=\"pl-cce\">\\|\\|</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">+</span><span class=\"pl-pds\">/</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4930\" class=\"blob-num js-line-number\" data-line-number=\"4930\"></td>\n        <td id=\"LC4930\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">arrayEach</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, expressions, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">expr</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4931\" class=\"blob-num js-line-number\" data-line-number=\"4931\"></td>\n        <td id=\"LC4931\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> objects <span class=\"pl-k\">=</span> [data];</td>\n      </tr>\n      <tr>\n        <td id=\"L4932\" class=\"blob-num js-line-number\" data-line-number=\"4932\"></td>\n        <td id=\"LC4932\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> tokens <span class=\"pl-k\">=</span> <span class=\"pl-smi\">expr</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4933\" class=\"blob-num js-line-number\" data-line-number=\"4933\"></td>\n        <td id=\"LC4933\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">arrayEach</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, tokens, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">token</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4934\" class=\"blob-num js-line-number\" data-line-number=\"4934\"></td>\n        <td id=\"LC4934\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> match <span class=\"pl-k\">=</span> <span class=\"pl-smi\">token</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>^(.+?)(?:<span class=\"pl-cce\">\\\\</span>[(-?<span class=\"pl-cce\">\\\\</span>d+|<span class=\"pl-cce\">\\\\</span>*|)<span class=\"pl-cce\">\\\\</span>])?$<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4935\" class=\"blob-num js-line-number\" data-line-number=\"4935\"></td>\n        <td id=\"LC4935\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> newObjects <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4936\" class=\"blob-num js-line-number\" data-line-number=\"4936\"></td>\n        <td id=\"LC4936\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">arrayEach</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, objects, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">obj</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4937\" class=\"blob-num js-line-number\" data-line-number=\"4937\"></td>\n        <td id=\"LC4937\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">if</span> (match[<span class=\"pl-c1\">1</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>*<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4938\" class=\"blob-num js-line-number\" data-line-number=\"4938\"></td>\n        <td id=\"LC4938\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">arrayEach</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, obj, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4939\" class=\"blob-num js-line-number\" data-line-number=\"4939\"></td>\n        <td id=\"LC4939\" class=\"blob-code blob-code-inner js-file-line\">                <span class=\"pl-smi\">newObjects</span>.<span class=\"pl-c1\">push</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L4940\" class=\"blob-num js-line-number\" data-line-number=\"4940\"></td>\n        <td id=\"LC4940\" class=\"blob-code blob-code-inner js-file-line\">              });</td>\n      </tr>\n      <tr>\n        <td id=\"L4941\" class=\"blob-num js-line-number\" data-line-number=\"4941\"></td>\n        <td id=\"LC4941\" class=\"blob-code blob-code-inner js-file-line\">            } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">obj</span>.<span class=\"pl-en\">hasOwnProperty</span>(match[<span class=\"pl-c1\">1</span>])) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4942\" class=\"blob-num js-line-number\" data-line-number=\"4942\"></td>\n        <td id=\"LC4942\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-smi\">newObjects</span>.<span class=\"pl-c1\">push</span>(obj[match[<span class=\"pl-c1\">1</span>]]);</td>\n      </tr>\n      <tr>\n        <td id=\"L4943\" class=\"blob-num js-line-number\" data-line-number=\"4943\"></td>\n        <td id=\"LC4943\" class=\"blob-code blob-code-inner js-file-line\">            }</td>\n      </tr>\n      <tr>\n        <td id=\"L4944\" class=\"blob-num js-line-number\" data-line-number=\"4944\"></td>\n        <td id=\"LC4944\" class=\"blob-code blob-code-inner js-file-line\">          });</td>\n      </tr>\n      <tr>\n        <td id=\"L4945\" class=\"blob-num js-line-number\" data-line-number=\"4945\"></td>\n        <td id=\"LC4945\" class=\"blob-code blob-code-inner js-file-line\">          objects <span class=\"pl-k\">=</span> newObjects;</td>\n      </tr>\n      <tr>\n        <td id=\"L4946\" class=\"blob-num js-line-number\" data-line-number=\"4946\"></td>\n        <td id=\"LC4946\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4947\" class=\"blob-num js-line-number\" data-line-number=\"4947\"></td>\n        <td id=\"LC4947\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (match[<span class=\"pl-c1\">2</span>] <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4948\" class=\"blob-num js-line-number\" data-line-number=\"4948\"></td>\n        <td id=\"LC4948\" class=\"blob-code blob-code-inner js-file-line\">            newObjects <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L4949\" class=\"blob-num js-line-number\" data-line-number=\"4949\"></td>\n        <td id=\"LC4949\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">arrayEach</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, objects, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">obj</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4950\" class=\"blob-num js-line-number\" data-line-number=\"4950\"></td>\n        <td id=\"LC4950\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">Array</span>.<span class=\"pl-en\">isArray</span>(obj)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4951\" class=\"blob-num js-line-number\" data-line-number=\"4951\"></td>\n        <td id=\"LC4951\" class=\"blob-code blob-code-inner js-file-line\">                <span class=\"pl-k\">if</span> (match[<span class=\"pl-c1\">2</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>*<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> match[<span class=\"pl-c1\">2</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4952\" class=\"blob-num js-line-number\" data-line-number=\"4952\"></td>\n        <td id=\"LC4952\" class=\"blob-code blob-code-inner js-file-line\">                  newObjects <span class=\"pl-k\">=</span> <span class=\"pl-smi\">newObjects</span>.<span class=\"pl-c1\">concat</span>(obj);</td>\n      </tr>\n      <tr>\n        <td id=\"L4953\" class=\"blob-num js-line-number\" data-line-number=\"4953\"></td>\n        <td id=\"LC4953\" class=\"blob-code blob-code-inner js-file-line\">                } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4954\" class=\"blob-num js-line-number\" data-line-number=\"4954\"></td>\n        <td id=\"LC4954\" class=\"blob-code blob-code-inner js-file-line\">                  <span class=\"pl-k\">var</span> idx <span class=\"pl-k\">=</span> <span class=\"pl-c1\">parseInt</span>(match[<span class=\"pl-c1\">2</span>], <span class=\"pl-c1\">10</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4955\" class=\"blob-num js-line-number\" data-line-number=\"4955\"></td>\n        <td id=\"LC4955\" class=\"blob-code blob-code-inner js-file-line\">                  <span class=\"pl-k\">if</span> (idx <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span>) idx <span class=\"pl-k\">=</span> <span class=\"pl-smi\">obj</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">+</span> idx; <span class=\"pl-c\">// negative indexing</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4956\" class=\"blob-num js-line-number\" data-line-number=\"4956\"></td>\n        <td id=\"LC4956\" class=\"blob-code blob-code-inner js-file-line\">                  <span class=\"pl-smi\">newObjects</span>.<span class=\"pl-c1\">push</span>(obj[idx]);</td>\n      </tr>\n      <tr>\n        <td id=\"L4957\" class=\"blob-num js-line-number\" data-line-number=\"4957\"></td>\n        <td id=\"LC4957\" class=\"blob-code blob-code-inner js-file-line\">                }</td>\n      </tr>\n      <tr>\n        <td id=\"L4958\" class=\"blob-num js-line-number\" data-line-number=\"4958\"></td>\n        <td id=\"LC4958\" class=\"blob-code blob-code-inner js-file-line\">              }</td>\n      </tr>\n      <tr>\n        <td id=\"L4959\" class=\"blob-num js-line-number\" data-line-number=\"4959\"></td>\n        <td id=\"LC4959\" class=\"blob-code blob-code-inner js-file-line\">            });</td>\n      </tr>\n      <tr>\n        <td id=\"L4960\" class=\"blob-num js-line-number\" data-line-number=\"4960\"></td>\n        <td id=\"LC4960\" class=\"blob-code blob-code-inner js-file-line\">            objects <span class=\"pl-k\">=</span> newObjects;</td>\n      </tr>\n      <tr>\n        <td id=\"L4961\" class=\"blob-num js-line-number\" data-line-number=\"4961\"></td>\n        <td id=\"LC4961\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L4962\" class=\"blob-num js-line-number\" data-line-number=\"4962\"></td>\n        <td id=\"LC4962\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4963\" class=\"blob-num js-line-number\" data-line-number=\"4963\"></td>\n        <td id=\"LC4963\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">objects</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">abort</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4964\" class=\"blob-num js-line-number\" data-line-number=\"4964\"></td>\n        <td id=\"LC4964\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L4965\" class=\"blob-num js-line-number\" data-line-number=\"4965\"></td>\n        <td id=\"LC4965\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4966\" class=\"blob-num js-line-number\" data-line-number=\"4966\"></td>\n        <td id=\"LC4966\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">objects</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4967\" class=\"blob-num js-line-number\" data-line-number=\"4967\"></td>\n        <td id=\"LC4967\" class=\"blob-code blob-code-inner js-file-line\">          results <span class=\"pl-k\">=</span> objects;</td>\n      </tr>\n      <tr>\n        <td id=\"L4968\" class=\"blob-num js-line-number\" data-line-number=\"4968\"></td>\n        <td id=\"LC4968\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">abort</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L4969\" class=\"blob-num js-line-number\" data-line-number=\"4969\"></td>\n        <td id=\"LC4969\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L4970\" class=\"blob-num js-line-number\" data-line-number=\"4970\"></td>\n        <td id=\"LC4970\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L4971\" class=\"blob-num js-line-number\" data-line-number=\"4971\"></td>\n        <td id=\"LC4971\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4972\" class=\"blob-num js-line-number\" data-line-number=\"4972\"></td>\n        <td id=\"LC4972\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> results;</td>\n      </tr>\n      <tr>\n        <td id=\"L4973\" class=\"blob-num js-line-number\" data-line-number=\"4973\"></td>\n        <td id=\"LC4973\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L4974\" class=\"blob-num js-line-number\" data-line-number=\"4974\"></td>\n        <td id=\"LC4974\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4975\" class=\"blob-num js-line-number\" data-line-number=\"4975\"></td>\n        <td id=\"LC4975\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">find</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">find</span>(<span class=\"pl-smi\">expression</span>, <span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4976\" class=\"blob-num js-line-number\" data-line-number=\"4976\"></td>\n        <td id=\"LC4976\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">jamespath</span>.<span class=\"pl-en\">query</span>(expression, data)[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L4977\" class=\"blob-num js-line-number\" data-line-number=\"4977\"></td>\n        <td id=\"LC4977\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L4978\" class=\"blob-num js-line-number\" data-line-number=\"4978\"></td>\n        <td id=\"LC4978\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L4979\" class=\"blob-num js-line-number\" data-line-number=\"4979\"></td>\n        <td id=\"LC4979\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4980\" class=\"blob-num js-line-number\" data-line-number=\"4980\"></td>\n        <td id=\"LC4980\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4981\" class=\"blob-num js-line-number\" data-line-number=\"4981\"></td>\n        <td id=\"LC4981\" class=\"blob-code blob-code-inner js-file-line\">  date<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4982\" class=\"blob-num js-line-number\" data-line-number=\"4982\"></td>\n        <td id=\"LC4982\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4983\" class=\"blob-num js-line-number\" data-line-number=\"4983\"></td>\n        <td id=\"LC4983\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4984\" class=\"blob-num js-line-number\" data-line-number=\"4984\"></td>\n        <td id=\"LC4984\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">getDate</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">getDate</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L4985\" class=\"blob-num js-line-number\" data-line-number=\"4985\"></td>\n        <td id=\"LC4985\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-c1\">AWS</span>) <span class=\"pl-c1\">AWS</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./core<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4986\" class=\"blob-num js-line-number\" data-line-number=\"4986\"></td>\n        <td id=\"LC4986\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">systemClockOffset</span>) { <span class=\"pl-c\">// use offset when non-zero</span></td>\n      </tr>\n      <tr>\n        <td id=\"L4987\" class=\"blob-num js-line-number\" data-line-number=\"4987\"></td>\n        <td id=\"LC4987\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>().<span class=\"pl-c1\">getTime</span>() <span class=\"pl-k\">+</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">systemClockOffset</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4988\" class=\"blob-num js-line-number\" data-line-number=\"4988\"></td>\n        <td id=\"LC4988\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L4989\" class=\"blob-num js-line-number\" data-line-number=\"4989\"></td>\n        <td id=\"LC4989\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L4990\" class=\"blob-num js-line-number\" data-line-number=\"4990\"></td>\n        <td id=\"LC4990\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L4991\" class=\"blob-num js-line-number\" data-line-number=\"4991\"></td>\n        <td id=\"LC4991\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L4992\" class=\"blob-num js-line-number\" data-line-number=\"4992\"></td>\n        <td id=\"LC4992\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4993\" class=\"blob-num js-line-number\" data-line-number=\"4993\"></td>\n        <td id=\"LC4993\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4994\" class=\"blob-num js-line-number\" data-line-number=\"4994\"></td>\n        <td id=\"LC4994\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">iso8601</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">iso8601</span>(<span class=\"pl-smi\">date</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L4995\" class=\"blob-num js-line-number\" data-line-number=\"4995\"></td>\n        <td id=\"LC4995\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (date <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) { date <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-c1\">getDate</span>(); }</td>\n      </tr>\n      <tr>\n        <td id=\"L4996\" class=\"blob-num js-line-number\" data-line-number=\"4996\"></td>\n        <td id=\"LC4996\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">date</span>.<span class=\"pl-en\">toISOString</span>().<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\.</span><span class=\"pl-c1\">\\d</span><span class=\"pl-k\">{3}</span>Z<span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Z<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L4997\" class=\"blob-num js-line-number\" data-line-number=\"4997\"></td>\n        <td id=\"LC4997\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L4998\" class=\"blob-num js-line-number\" data-line-number=\"4998\"></td>\n        <td id=\"LC4998\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L4999\" class=\"blob-num js-line-number\" data-line-number=\"4999\"></td>\n        <td id=\"LC4999\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5000\" class=\"blob-num js-line-number\" data-line-number=\"5000\"></td>\n        <td id=\"LC5000\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">rfc822</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">rfc822</span>(<span class=\"pl-smi\">date</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5001\" class=\"blob-num js-line-number\" data-line-number=\"5001\"></td>\n        <td id=\"LC5001\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (date <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) { date <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-c1\">getDate</span>(); }</td>\n      </tr>\n      <tr>\n        <td id=\"L5002\" class=\"blob-num js-line-number\" data-line-number=\"5002\"></td>\n        <td id=\"LC5002\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">date</span>.<span class=\"pl-c1\">toUTCString</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L5003\" class=\"blob-num js-line-number\" data-line-number=\"5003\"></td>\n        <td id=\"LC5003\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L5004\" class=\"blob-num js-line-number\" data-line-number=\"5004\"></td>\n        <td id=\"LC5004\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5005\" class=\"blob-num js-line-number\" data-line-number=\"5005\"></td>\n        <td id=\"LC5005\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5006\" class=\"blob-num js-line-number\" data-line-number=\"5006\"></td>\n        <td id=\"LC5006\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">unixTimestamp</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">unixTimestamp</span>(<span class=\"pl-smi\">date</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5007\" class=\"blob-num js-line-number\" data-line-number=\"5007\"></td>\n        <td id=\"LC5007\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (date <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) { date <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-c1\">getDate</span>(); }</td>\n      </tr>\n      <tr>\n        <td id=\"L5008\" class=\"blob-num js-line-number\" data-line-number=\"5008\"></td>\n        <td id=\"LC5008\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">date</span>.<span class=\"pl-c1\">getTime</span>() <span class=\"pl-k\">/</span> <span class=\"pl-c1\">1000</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5009\" class=\"blob-num js-line-number\" data-line-number=\"5009\"></td>\n        <td id=\"LC5009\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L5010\" class=\"blob-num js-line-number\" data-line-number=\"5010\"></td>\n        <td id=\"LC5010\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5011\" class=\"blob-num js-line-number\" data-line-number=\"5011\"></td>\n        <td id=\"LC5011\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5012\" class=\"blob-num js-line-number\" data-line-number=\"5012\"></td>\n        <td id=\"LC5012\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">from</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">format</span>(<span class=\"pl-smi\">date</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5013\" class=\"blob-num js-line-number\" data-line-number=\"5013\"></td>\n        <td id=\"LC5013\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> date <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5014\" class=\"blob-num js-line-number\" data-line-number=\"5014\"></td>\n        <td id=\"LC5014\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>(date <span class=\"pl-k\">*</span> <span class=\"pl-c1\">1000</span>); <span class=\"pl-c\">// unix timestamp</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5015\" class=\"blob-num js-line-number\" data-line-number=\"5015\"></td>\n        <td id=\"LC5015\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5016\" class=\"blob-num js-line-number\" data-line-number=\"5016\"></td>\n        <td id=\"LC5016\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>(date);</td>\n      </tr>\n      <tr>\n        <td id=\"L5017\" class=\"blob-num js-line-number\" data-line-number=\"5017\"></td>\n        <td id=\"LC5017\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5018\" class=\"blob-num js-line-number\" data-line-number=\"5018\"></td>\n        <td id=\"LC5018\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L5019\" class=\"blob-num js-line-number\" data-line-number=\"5019\"></td>\n        <td id=\"LC5019\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5020\" class=\"blob-num js-line-number\" data-line-number=\"5020\"></td>\n        <td id=\"LC5020\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5021\" class=\"blob-num js-line-number\" data-line-number=\"5021\"></td>\n        <td id=\"LC5021\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">format</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">format</span>(<span class=\"pl-smi\">date</span>, <span class=\"pl-smi\">formatter</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5022\" class=\"blob-num js-line-number\" data-line-number=\"5022\"></td>\n        <td id=\"LC5022\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>formatter) formatter <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>iso8601<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5023\" class=\"blob-num js-line-number\" data-line-number=\"5023\"></td>\n        <td id=\"LC5023\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>[formatter](<span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">date</span>.<span class=\"pl-en\">from</span>(date));</td>\n      </tr>\n      <tr>\n        <td id=\"L5024\" class=\"blob-num js-line-number\" data-line-number=\"5024\"></td>\n        <td id=\"LC5024\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L5025\" class=\"blob-num js-line-number\" data-line-number=\"5025\"></td>\n        <td id=\"LC5025\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5026\" class=\"blob-num js-line-number\" data-line-number=\"5026\"></td>\n        <td id=\"LC5026\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">parseTimestamp</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">parseTimestamp</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5027\" class=\"blob-num js-line-number\" data-line-number=\"5027\"></td>\n        <td id=\"LC5027\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) { <span class=\"pl-c\">// unix timestamp (number)</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5028\" class=\"blob-num js-line-number\" data-line-number=\"5028\"></td>\n        <td id=\"LC5028\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>(value <span class=\"pl-k\">*</span> <span class=\"pl-c1\">1000</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5029\" class=\"blob-num js-line-number\" data-line-number=\"5029\"></td>\n        <td id=\"LC5029\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\d</span><span class=\"pl-k\">+</span><span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>)) { <span class=\"pl-c\">// unix timestamp</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5030\" class=\"blob-num js-line-number\" data-line-number=\"5030\"></td>\n        <td id=\"LC5030\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>(value <span class=\"pl-k\">*</span> <span class=\"pl-c1\">1000</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5031\" class=\"blob-num js-line-number\" data-line-number=\"5031\"></td>\n        <td id=\"LC5031\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\d</span><span class=\"pl-k\">{4}</span><span class=\"pl-pds\">/</span></span>)) { <span class=\"pl-c\">// iso8601</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5032\" class=\"blob-num js-line-number\" data-line-number=\"5032\"></td>\n        <td id=\"LC5032\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L5033\" class=\"blob-num js-line-number\" data-line-number=\"5033\"></td>\n        <td id=\"LC5033\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\w</span><span class=\"pl-k\">{3}</span>,<span class=\"pl-pds\">/</span></span>)) { <span class=\"pl-c\">// rfc822</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5034\" class=\"blob-num js-line-number\" data-line-number=\"5034\"></td>\n        <td id=\"LC5034\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L5035\" class=\"blob-num js-line-number\" data-line-number=\"5035\"></td>\n        <td id=\"LC5035\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5036\" class=\"blob-num js-line-number\" data-line-number=\"5036\"></td>\n        <td id=\"LC5036\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(</td>\n      </tr>\n      <tr>\n        <td id=\"L5037\" class=\"blob-num js-line-number\" data-line-number=\"5037\"></td>\n        <td id=\"LC5037\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>unhandled timestamp format: <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> value),</td>\n      </tr>\n      <tr>\n        <td id=\"L5038\" class=\"blob-num js-line-number\" data-line-number=\"5038\"></td>\n        <td id=\"LC5038\" class=\"blob-code blob-code-inner js-file-line\">          {code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>TimestampParserError<span class=\"pl-pds\">&#39;</span></span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L5039\" class=\"blob-num js-line-number\" data-line-number=\"5039\"></td>\n        <td id=\"LC5039\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5040\" class=\"blob-num js-line-number\" data-line-number=\"5040\"></td>\n        <td id=\"LC5040\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5041\" class=\"blob-num js-line-number\" data-line-number=\"5041\"></td>\n        <td id=\"LC5041\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5042\" class=\"blob-num js-line-number\" data-line-number=\"5042\"></td>\n        <td id=\"LC5042\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5043\" class=\"blob-num js-line-number\" data-line-number=\"5043\"></td>\n        <td id=\"LC5043\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5044\" class=\"blob-num js-line-number\" data-line-number=\"5044\"></td>\n        <td id=\"LC5044\" class=\"blob-code blob-code-inner js-file-line\">  crypto<span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5045\" class=\"blob-num js-line-number\" data-line-number=\"5045\"></td>\n        <td id=\"LC5045\" class=\"blob-code blob-code-inner js-file-line\">    crc32Table<span class=\"pl-k\">:</span> [</td>\n      </tr>\n      <tr>\n        <td id=\"L5046\" class=\"blob-num js-line-number\" data-line-number=\"5046\"></td>\n        <td id=\"LC5046\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x00000000</span>, <span class=\"pl-c1\">0x77073096</span>, <span class=\"pl-c1\">0xEE0E612C</span>, <span class=\"pl-c1\">0x990951BA</span>, <span class=\"pl-c1\">0x076DC419</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5047\" class=\"blob-num js-line-number\" data-line-number=\"5047\"></td>\n        <td id=\"LC5047\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x706AF48F</span>, <span class=\"pl-c1\">0xE963A535</span>, <span class=\"pl-c1\">0x9E6495A3</span>, <span class=\"pl-c1\">0x0EDB8832</span>, <span class=\"pl-c1\">0x79DCB8A4</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5048\" class=\"blob-num js-line-number\" data-line-number=\"5048\"></td>\n        <td id=\"LC5048\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xE0D5E91E</span>, <span class=\"pl-c1\">0x97D2D988</span>, <span class=\"pl-c1\">0x09B64C2B</span>, <span class=\"pl-c1\">0x7EB17CBD</span>, <span class=\"pl-c1\">0xE7B82D07</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5049\" class=\"blob-num js-line-number\" data-line-number=\"5049\"></td>\n        <td id=\"LC5049\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x90BF1D91</span>, <span class=\"pl-c1\">0x1DB71064</span>, <span class=\"pl-c1\">0x6AB020F2</span>, <span class=\"pl-c1\">0xF3B97148</span>, <span class=\"pl-c1\">0x84BE41DE</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5050\" class=\"blob-num js-line-number\" data-line-number=\"5050\"></td>\n        <td id=\"LC5050\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x1ADAD47D</span>, <span class=\"pl-c1\">0x6DDDE4EB</span>, <span class=\"pl-c1\">0xF4D4B551</span>, <span class=\"pl-c1\">0x83D385C7</span>, <span class=\"pl-c1\">0x136C9856</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5051\" class=\"blob-num js-line-number\" data-line-number=\"5051\"></td>\n        <td id=\"LC5051\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x646BA8C0</span>, <span class=\"pl-c1\">0xFD62F97A</span>, <span class=\"pl-c1\">0x8A65C9EC</span>, <span class=\"pl-c1\">0x14015C4F</span>, <span class=\"pl-c1\">0x63066CD9</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5052\" class=\"blob-num js-line-number\" data-line-number=\"5052\"></td>\n        <td id=\"LC5052\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xFA0F3D63</span>, <span class=\"pl-c1\">0x8D080DF5</span>, <span class=\"pl-c1\">0x3B6E20C8</span>, <span class=\"pl-c1\">0x4C69105E</span>, <span class=\"pl-c1\">0xD56041E4</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5053\" class=\"blob-num js-line-number\" data-line-number=\"5053\"></td>\n        <td id=\"LC5053\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xA2677172</span>, <span class=\"pl-c1\">0x3C03E4D1</span>, <span class=\"pl-c1\">0x4B04D447</span>, <span class=\"pl-c1\">0xD20D85FD</span>, <span class=\"pl-c1\">0xA50AB56B</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5054\" class=\"blob-num js-line-number\" data-line-number=\"5054\"></td>\n        <td id=\"LC5054\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x35B5A8FA</span>, <span class=\"pl-c1\">0x42B2986C</span>, <span class=\"pl-c1\">0xDBBBC9D6</span>, <span class=\"pl-c1\">0xACBCF940</span>, <span class=\"pl-c1\">0x32D86CE3</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5055\" class=\"blob-num js-line-number\" data-line-number=\"5055\"></td>\n        <td id=\"LC5055\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x45DF5C75</span>, <span class=\"pl-c1\">0xDCD60DCF</span>, <span class=\"pl-c1\">0xABD13D59</span>, <span class=\"pl-c1\">0x26D930AC</span>, <span class=\"pl-c1\">0x51DE003A</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5056\" class=\"blob-num js-line-number\" data-line-number=\"5056\"></td>\n        <td id=\"LC5056\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xC8D75180</span>, <span class=\"pl-c1\">0xBFD06116</span>, <span class=\"pl-c1\">0x21B4F4B5</span>, <span class=\"pl-c1\">0x56B3C423</span>, <span class=\"pl-c1\">0xCFBA9599</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5057\" class=\"blob-num js-line-number\" data-line-number=\"5057\"></td>\n        <td id=\"LC5057\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xB8BDA50F</span>, <span class=\"pl-c1\">0x2802B89E</span>, <span class=\"pl-c1\">0x5F058808</span>, <span class=\"pl-c1\">0xC60CD9B2</span>, <span class=\"pl-c1\">0xB10BE924</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5058\" class=\"blob-num js-line-number\" data-line-number=\"5058\"></td>\n        <td id=\"LC5058\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x2F6F7C87</span>, <span class=\"pl-c1\">0x58684C11</span>, <span class=\"pl-c1\">0xC1611DAB</span>, <span class=\"pl-c1\">0xB6662D3D</span>, <span class=\"pl-c1\">0x76DC4190</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5059\" class=\"blob-num js-line-number\" data-line-number=\"5059\"></td>\n        <td id=\"LC5059\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x01DB7106</span>, <span class=\"pl-c1\">0x98D220BC</span>, <span class=\"pl-c1\">0xEFD5102A</span>, <span class=\"pl-c1\">0x71B18589</span>, <span class=\"pl-c1\">0x06B6B51F</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5060\" class=\"blob-num js-line-number\" data-line-number=\"5060\"></td>\n        <td id=\"LC5060\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x9FBFE4A5</span>, <span class=\"pl-c1\">0xE8B8D433</span>, <span class=\"pl-c1\">0x7807C9A2</span>, <span class=\"pl-c1\">0x0F00F934</span>, <span class=\"pl-c1\">0x9609A88E</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5061\" class=\"blob-num js-line-number\" data-line-number=\"5061\"></td>\n        <td id=\"LC5061\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xE10E9818</span>, <span class=\"pl-c1\">0x7F6A0DBB</span>, <span class=\"pl-c1\">0x086D3D2D</span>, <span class=\"pl-c1\">0x91646C97</span>, <span class=\"pl-c1\">0xE6635C01</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5062\" class=\"blob-num js-line-number\" data-line-number=\"5062\"></td>\n        <td id=\"LC5062\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x6B6B51F4</span>, <span class=\"pl-c1\">0x1C6C6162</span>, <span class=\"pl-c1\">0x856530D8</span>, <span class=\"pl-c1\">0xF262004E</span>, <span class=\"pl-c1\">0x6C0695ED</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5063\" class=\"blob-num js-line-number\" data-line-number=\"5063\"></td>\n        <td id=\"LC5063\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x1B01A57B</span>, <span class=\"pl-c1\">0x8208F4C1</span>, <span class=\"pl-c1\">0xF50FC457</span>, <span class=\"pl-c1\">0x65B0D9C6</span>, <span class=\"pl-c1\">0x12B7E950</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5064\" class=\"blob-num js-line-number\" data-line-number=\"5064\"></td>\n        <td id=\"LC5064\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x8BBEB8EA</span>, <span class=\"pl-c1\">0xFCB9887C</span>, <span class=\"pl-c1\">0x62DD1DDF</span>, <span class=\"pl-c1\">0x15DA2D49</span>, <span class=\"pl-c1\">0x8CD37CF3</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5065\" class=\"blob-num js-line-number\" data-line-number=\"5065\"></td>\n        <td id=\"LC5065\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xFBD44C65</span>, <span class=\"pl-c1\">0x4DB26158</span>, <span class=\"pl-c1\">0x3AB551CE</span>, <span class=\"pl-c1\">0xA3BC0074</span>, <span class=\"pl-c1\">0xD4BB30E2</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5066\" class=\"blob-num js-line-number\" data-line-number=\"5066\"></td>\n        <td id=\"LC5066\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x4ADFA541</span>, <span class=\"pl-c1\">0x3DD895D7</span>, <span class=\"pl-c1\">0xA4D1C46D</span>, <span class=\"pl-c1\">0xD3D6F4FB</span>, <span class=\"pl-c1\">0x4369E96A</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5067\" class=\"blob-num js-line-number\" data-line-number=\"5067\"></td>\n        <td id=\"LC5067\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x346ED9FC</span>, <span class=\"pl-c1\">0xAD678846</span>, <span class=\"pl-c1\">0xDA60B8D0</span>, <span class=\"pl-c1\">0x44042D73</span>, <span class=\"pl-c1\">0x33031DE5</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5068\" class=\"blob-num js-line-number\" data-line-number=\"5068\"></td>\n        <td id=\"LC5068\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xAA0A4C5F</span>, <span class=\"pl-c1\">0xDD0D7CC9</span>, <span class=\"pl-c1\">0x5005713C</span>, <span class=\"pl-c1\">0x270241AA</span>, <span class=\"pl-c1\">0xBE0B1010</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5069\" class=\"blob-num js-line-number\" data-line-number=\"5069\"></td>\n        <td id=\"LC5069\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xC90C2086</span>, <span class=\"pl-c1\">0x5768B525</span>, <span class=\"pl-c1\">0x206F85B3</span>, <span class=\"pl-c1\">0xB966D409</span>, <span class=\"pl-c1\">0xCE61E49F</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5070\" class=\"blob-num js-line-number\" data-line-number=\"5070\"></td>\n        <td id=\"LC5070\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x5EDEF90E</span>, <span class=\"pl-c1\">0x29D9C998</span>, <span class=\"pl-c1\">0xB0D09822</span>, <span class=\"pl-c1\">0xC7D7A8B4</span>, <span class=\"pl-c1\">0x59B33D17</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5071\" class=\"blob-num js-line-number\" data-line-number=\"5071\"></td>\n        <td id=\"LC5071\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x2EB40D81</span>, <span class=\"pl-c1\">0xB7BD5C3B</span>, <span class=\"pl-c1\">0xC0BA6CAD</span>, <span class=\"pl-c1\">0xEDB88320</span>, <span class=\"pl-c1\">0x9ABFB3B6</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5072\" class=\"blob-num js-line-number\" data-line-number=\"5072\"></td>\n        <td id=\"LC5072\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x03B6E20C</span>, <span class=\"pl-c1\">0x74B1D29A</span>, <span class=\"pl-c1\">0xEAD54739</span>, <span class=\"pl-c1\">0x9DD277AF</span>, <span class=\"pl-c1\">0x04DB2615</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5073\" class=\"blob-num js-line-number\" data-line-number=\"5073\"></td>\n        <td id=\"LC5073\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x73DC1683</span>, <span class=\"pl-c1\">0xE3630B12</span>, <span class=\"pl-c1\">0x94643B84</span>, <span class=\"pl-c1\">0x0D6D6A3E</span>, <span class=\"pl-c1\">0x7A6A5AA8</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5074\" class=\"blob-num js-line-number\" data-line-number=\"5074\"></td>\n        <td id=\"LC5074\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xE40ECF0B</span>, <span class=\"pl-c1\">0x9309FF9D</span>, <span class=\"pl-c1\">0x0A00AE27</span>, <span class=\"pl-c1\">0x7D079EB1</span>, <span class=\"pl-c1\">0xF00F9344</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5075\" class=\"blob-num js-line-number\" data-line-number=\"5075\"></td>\n        <td id=\"LC5075\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x8708A3D2</span>, <span class=\"pl-c1\">0x1E01F268</span>, <span class=\"pl-c1\">0x6906C2FE</span>, <span class=\"pl-c1\">0xF762575D</span>, <span class=\"pl-c1\">0x806567CB</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5076\" class=\"blob-num js-line-number\" data-line-number=\"5076\"></td>\n        <td id=\"LC5076\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x196C3671</span>, <span class=\"pl-c1\">0x6E6B06E7</span>, <span class=\"pl-c1\">0xFED41B76</span>, <span class=\"pl-c1\">0x89D32BE0</span>, <span class=\"pl-c1\">0x10DA7A5A</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5077\" class=\"blob-num js-line-number\" data-line-number=\"5077\"></td>\n        <td id=\"LC5077\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x67DD4ACC</span>, <span class=\"pl-c1\">0xF9B9DF6F</span>, <span class=\"pl-c1\">0x8EBEEFF9</span>, <span class=\"pl-c1\">0x17B7BE43</span>, <span class=\"pl-c1\">0x60B08ED5</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5078\" class=\"blob-num js-line-number\" data-line-number=\"5078\"></td>\n        <td id=\"LC5078\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xD6D6A3E8</span>, <span class=\"pl-c1\">0xA1D1937E</span>, <span class=\"pl-c1\">0x38D8C2C4</span>, <span class=\"pl-c1\">0x4FDFF252</span>, <span class=\"pl-c1\">0xD1BB67F1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5079\" class=\"blob-num js-line-number\" data-line-number=\"5079\"></td>\n        <td id=\"LC5079\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xA6BC5767</span>, <span class=\"pl-c1\">0x3FB506DD</span>, <span class=\"pl-c1\">0x48B2364B</span>, <span class=\"pl-c1\">0xD80D2BDA</span>, <span class=\"pl-c1\">0xAF0A1B4C</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5080\" class=\"blob-num js-line-number\" data-line-number=\"5080\"></td>\n        <td id=\"LC5080\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x36034AF6</span>, <span class=\"pl-c1\">0x41047A60</span>, <span class=\"pl-c1\">0xDF60EFC3</span>, <span class=\"pl-c1\">0xA867DF55</span>, <span class=\"pl-c1\">0x316E8EEF</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5081\" class=\"blob-num js-line-number\" data-line-number=\"5081\"></td>\n        <td id=\"LC5081\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x4669BE79</span>, <span class=\"pl-c1\">0xCB61B38C</span>, <span class=\"pl-c1\">0xBC66831A</span>, <span class=\"pl-c1\">0x256FD2A0</span>, <span class=\"pl-c1\">0x5268E236</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5082\" class=\"blob-num js-line-number\" data-line-number=\"5082\"></td>\n        <td id=\"LC5082\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xCC0C7795</span>, <span class=\"pl-c1\">0xBB0B4703</span>, <span class=\"pl-c1\">0x220216B9</span>, <span class=\"pl-c1\">0x5505262F</span>, <span class=\"pl-c1\">0xC5BA3BBE</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5083\" class=\"blob-num js-line-number\" data-line-number=\"5083\"></td>\n        <td id=\"LC5083\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xB2BD0B28</span>, <span class=\"pl-c1\">0x2BB45A92</span>, <span class=\"pl-c1\">0x5CB36A04</span>, <span class=\"pl-c1\">0xC2D7FFA7</span>, <span class=\"pl-c1\">0xB5D0CF31</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5084\" class=\"blob-num js-line-number\" data-line-number=\"5084\"></td>\n        <td id=\"LC5084\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x2CD99E8B</span>, <span class=\"pl-c1\">0x5BDEAE1D</span>, <span class=\"pl-c1\">0x9B64C2B0</span>, <span class=\"pl-c1\">0xEC63F226</span>, <span class=\"pl-c1\">0x756AA39C</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5085\" class=\"blob-num js-line-number\" data-line-number=\"5085\"></td>\n        <td id=\"LC5085\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x026D930A</span>, <span class=\"pl-c1\">0x9C0906A9</span>, <span class=\"pl-c1\">0xEB0E363F</span>, <span class=\"pl-c1\">0x72076785</span>, <span class=\"pl-c1\">0x05005713</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5086\" class=\"blob-num js-line-number\" data-line-number=\"5086\"></td>\n        <td id=\"LC5086\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x95BF4A82</span>, <span class=\"pl-c1\">0xE2B87A14</span>, <span class=\"pl-c1\">0x7BB12BAE</span>, <span class=\"pl-c1\">0x0CB61B38</span>, <span class=\"pl-c1\">0x92D28E9B</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5087\" class=\"blob-num js-line-number\" data-line-number=\"5087\"></td>\n        <td id=\"LC5087\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xE5D5BE0D</span>, <span class=\"pl-c1\">0x7CDCEFB7</span>, <span class=\"pl-c1\">0x0BDBDF21</span>, <span class=\"pl-c1\">0x86D3D2D4</span>, <span class=\"pl-c1\">0xF1D4E242</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5088\" class=\"blob-num js-line-number\" data-line-number=\"5088\"></td>\n        <td id=\"LC5088\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x68DDB3F8</span>, <span class=\"pl-c1\">0x1FDA836E</span>, <span class=\"pl-c1\">0x81BE16CD</span>, <span class=\"pl-c1\">0xF6B9265B</span>, <span class=\"pl-c1\">0x6FB077E1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5089\" class=\"blob-num js-line-number\" data-line-number=\"5089\"></td>\n        <td id=\"LC5089\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x18B74777</span>, <span class=\"pl-c1\">0x88085AE6</span>, <span class=\"pl-c1\">0xFF0F6A70</span>, <span class=\"pl-c1\">0x66063BCA</span>, <span class=\"pl-c1\">0x11010B5C</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5090\" class=\"blob-num js-line-number\" data-line-number=\"5090\"></td>\n        <td id=\"LC5090\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x8F659EFF</span>, <span class=\"pl-c1\">0xF862AE69</span>, <span class=\"pl-c1\">0x616BFFD3</span>, <span class=\"pl-c1\">0x166CCF45</span>, <span class=\"pl-c1\">0xA00AE278</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5091\" class=\"blob-num js-line-number\" data-line-number=\"5091\"></td>\n        <td id=\"LC5091\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xD70DD2EE</span>, <span class=\"pl-c1\">0x4E048354</span>, <span class=\"pl-c1\">0x3903B3C2</span>, <span class=\"pl-c1\">0xA7672661</span>, <span class=\"pl-c1\">0xD06016F7</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5092\" class=\"blob-num js-line-number\" data-line-number=\"5092\"></td>\n        <td id=\"LC5092\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x4969474D</span>, <span class=\"pl-c1\">0x3E6E77DB</span>, <span class=\"pl-c1\">0xAED16A4A</span>, <span class=\"pl-c1\">0xD9D65ADC</span>, <span class=\"pl-c1\">0x40DF0B66</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5093\" class=\"blob-num js-line-number\" data-line-number=\"5093\"></td>\n        <td id=\"LC5093\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x37D83BF0</span>, <span class=\"pl-c1\">0xA9BCAE53</span>, <span class=\"pl-c1\">0xDEBB9EC5</span>, <span class=\"pl-c1\">0x47B2CF7F</span>, <span class=\"pl-c1\">0x30B5FFE9</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5094\" class=\"blob-num js-line-number\" data-line-number=\"5094\"></td>\n        <td id=\"LC5094\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xBDBDF21C</span>, <span class=\"pl-c1\">0xCABAC28A</span>, <span class=\"pl-c1\">0x53B39330</span>, <span class=\"pl-c1\">0x24B4A3A6</span>, <span class=\"pl-c1\">0xBAD03605</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5095\" class=\"blob-num js-line-number\" data-line-number=\"5095\"></td>\n        <td id=\"LC5095\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0xCDD70693</span>, <span class=\"pl-c1\">0x54DE5729</span>, <span class=\"pl-c1\">0x23D967BF</span>, <span class=\"pl-c1\">0xB3667A2E</span>, <span class=\"pl-c1\">0xC4614AB8</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5096\" class=\"blob-num js-line-number\" data-line-number=\"5096\"></td>\n        <td id=\"LC5096\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x5D681B02</span>, <span class=\"pl-c1\">0x2A6F2B94</span>, <span class=\"pl-c1\">0xB40BBE37</span>, <span class=\"pl-c1\">0xC30C8EA1</span>, <span class=\"pl-c1\">0x5A05DF1B</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5097\" class=\"blob-num js-line-number\" data-line-number=\"5097\"></td>\n        <td id=\"LC5097\" class=\"blob-code blob-code-inner js-file-line\">     <span class=\"pl-c1\">0x2D02EF8D</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L5098\" class=\"blob-num js-line-number\" data-line-number=\"5098\"></td>\n        <td id=\"LC5098\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5099\" class=\"blob-num js-line-number\" data-line-number=\"5099\"></td>\n        <td id=\"LC5099\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">crc32</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">crc32</span>(<span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5100\" class=\"blob-num js-line-number\" data-line-number=\"5100\"></td>\n        <td id=\"LC5100\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> tbl <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-smi\">crc32Table</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5101\" class=\"blob-num js-line-number\" data-line-number=\"5101\"></td>\n        <td id=\"LC5101\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> crc <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">^</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5102\" class=\"blob-num js-line-number\" data-line-number=\"5102\"></td>\n        <td id=\"LC5102\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5103\" class=\"blob-num js-line-number\" data-line-number=\"5103\"></td>\n        <td id=\"LC5103\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> data <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5104\" class=\"blob-num js-line-number\" data-line-number=\"5104\"></td>\n        <td id=\"LC5104\" class=\"blob-code blob-code-inner js-file-line\">        data <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(data);</td>\n      </tr>\n      <tr>\n        <td id=\"L5105\" class=\"blob-num js-line-number\" data-line-number=\"5105\"></td>\n        <td id=\"LC5105\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5106\" class=\"blob-num js-line-number\" data-line-number=\"5106\"></td>\n        <td id=\"LC5106\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5107\" class=\"blob-num js-line-number\" data-line-number=\"5107\"></td>\n        <td id=\"LC5107\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5108\" class=\"blob-num js-line-number\" data-line-number=\"5108\"></td>\n        <td id=\"LC5108\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> code <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-en\">readUInt8</span>(i);</td>\n      </tr>\n      <tr>\n        <td id=\"L5109\" class=\"blob-num js-line-number\" data-line-number=\"5109\"></td>\n        <td id=\"LC5109\" class=\"blob-code blob-code-inner js-file-line\">        crc <span class=\"pl-k\">=</span> (crc <span class=\"pl-k\">&gt;&gt;&gt;</span> <span class=\"pl-c1\">8</span>) <span class=\"pl-k\">^</span> tbl[(crc <span class=\"pl-k\">^</span> code) <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFF</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L5110\" class=\"blob-num js-line-number\" data-line-number=\"5110\"></td>\n        <td id=\"LC5110\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5111\" class=\"blob-num js-line-number\" data-line-number=\"5111\"></td>\n        <td id=\"LC5111\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> (crc <span class=\"pl-k\">^</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>) <span class=\"pl-k\">&gt;&gt;&gt;</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5112\" class=\"blob-num js-line-number\" data-line-number=\"5112\"></td>\n        <td id=\"LC5112\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L5113\" class=\"blob-num js-line-number\" data-line-number=\"5113\"></td>\n        <td id=\"LC5113\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5114\" class=\"blob-num js-line-number\" data-line-number=\"5114\"></td>\n        <td id=\"LC5114\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">hmac</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">hmac</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">string</span>, <span class=\"pl-smi\">digest</span>, <span class=\"pl-smi\">fn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5115\" class=\"blob-num js-line-number\" data-line-number=\"5115\"></td>\n        <td id=\"LC5115\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>digest) digest <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>binary<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5116\" class=\"blob-num js-line-number\" data-line-number=\"5116\"></td>\n        <td id=\"LC5116\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (digest <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>buffer<span class=\"pl-pds\">&#39;</span></span>) { digest <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span>; }</td>\n      </tr>\n      <tr>\n        <td id=\"L5117\" class=\"blob-num js-line-number\" data-line-number=\"5117\"></td>\n        <td id=\"LC5117\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>fn) fn <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sha256<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5118\" class=\"blob-num js-line-number\" data-line-number=\"5118\"></td>\n        <td id=\"LC5118\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> string <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) string <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(string);</td>\n      </tr>\n      <tr>\n        <td id=\"L5119\" class=\"blob-num js-line-number\" data-line-number=\"5119\"></td>\n        <td id=\"LC5119\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">cryptoLib</span>.<span class=\"pl-en\">createHmac</span>(fn, key).<span class=\"pl-en\">update</span>(string).<span class=\"pl-en\">digest</span>(digest);</td>\n      </tr>\n      <tr>\n        <td id=\"L5120\" class=\"blob-num js-line-number\" data-line-number=\"5120\"></td>\n        <td id=\"LC5120\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L5121\" class=\"blob-num js-line-number\" data-line-number=\"5121\"></td>\n        <td id=\"LC5121\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5122\" class=\"blob-num js-line-number\" data-line-number=\"5122\"></td>\n        <td id=\"LC5122\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">md5</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">md5</span>(<span class=\"pl-smi\">data</span>, <span class=\"pl-smi\">digest</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5123\" class=\"blob-num js-line-number\" data-line-number=\"5123\"></td>\n        <td id=\"LC5123\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-c1\">hash</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>md5<span class=\"pl-pds\">&#39;</span></span>, data, digest, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L5124\" class=\"blob-num js-line-number\" data-line-number=\"5124\"></td>\n        <td id=\"LC5124\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L5125\" class=\"blob-num js-line-number\" data-line-number=\"5125\"></td>\n        <td id=\"LC5125\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5126\" class=\"blob-num js-line-number\" data-line-number=\"5126\"></td>\n        <td id=\"LC5126\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">sha256</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">sha256</span>(<span class=\"pl-smi\">data</span>, <span class=\"pl-smi\">digest</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5127\" class=\"blob-num js-line-number\" data-line-number=\"5127\"></td>\n        <td id=\"LC5127\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-c1\">hash</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sha256<span class=\"pl-pds\">&#39;</span></span>, data, digest, callback);</td>\n      </tr>\n      <tr>\n        <td id=\"L5128\" class=\"blob-num js-line-number\" data-line-number=\"5128\"></td>\n        <td id=\"LC5128\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L5129\" class=\"blob-num js-line-number\" data-line-number=\"5129\"></td>\n        <td id=\"LC5129\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5130\" class=\"blob-num js-line-number\" data-line-number=\"5130\"></td>\n        <td id=\"LC5130\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">hash</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">algorithm</span>, <span class=\"pl-smi\">data</span>, <span class=\"pl-smi\">digest</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5131\" class=\"blob-num js-line-number\" data-line-number=\"5131\"></td>\n        <td id=\"LC5131\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> hash <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">createHash</span>(algorithm);</td>\n      </tr>\n      <tr>\n        <td id=\"L5132\" class=\"blob-num js-line-number\" data-line-number=\"5132\"></td>\n        <td id=\"LC5132\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>digest) { digest <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>binary<span class=\"pl-pds\">&#39;</span></span>; }</td>\n      </tr>\n      <tr>\n        <td id=\"L5133\" class=\"blob-num js-line-number\" data-line-number=\"5133\"></td>\n        <td id=\"LC5133\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (digest <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>buffer<span class=\"pl-pds\">&#39;</span></span>) { digest <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span>; }</td>\n      </tr>\n      <tr>\n        <td id=\"L5134\" class=\"blob-num js-line-number\" data-line-number=\"5134\"></td>\n        <td id=\"LC5134\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> data <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) data <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(data);</td>\n      </tr>\n      <tr>\n        <td id=\"L5135\" class=\"blob-num js-line-number\" data-line-number=\"5135\"></td>\n        <td id=\"LC5135\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> sliceFn <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arraySliceFn</span>(data);</td>\n      </tr>\n      <tr>\n        <td id=\"L5136\" class=\"blob-num js-line-number\" data-line-number=\"5136\"></td>\n        <td id=\"LC5136\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> isBuffer <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">isBuffer</span>(data);</td>\n      </tr>\n      <tr>\n        <td id=\"L5137\" class=\"blob-num js-line-number\" data-line-number=\"5137\"></td>\n        <td id=\"LC5137\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isBrowser</span>() <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> ArrayBuffer <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> data <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">buffer</span> <span class=\"pl-k\">instanceof</span> ArrayBuffer) isBuffer <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5138\" class=\"blob-num js-line-number\" data-line-number=\"5138\"></td>\n        <td id=\"LC5138\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5139\" class=\"blob-num js-line-number\" data-line-number=\"5139\"></td>\n        <td id=\"LC5139\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (callback <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> data <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5140\" class=\"blob-num js-line-number\" data-line-number=\"5140\"></td>\n        <td id=\"LC5140\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">on</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>isBuffer) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5141\" class=\"blob-num js-line-number\" data-line-number=\"5141\"></td>\n        <td id=\"LC5141\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">data</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>data<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">chunk</span>) { <span class=\"pl-smi\">hash</span>.<span class=\"pl-en\">update</span>(chunk); });</td>\n      </tr>\n      <tr>\n        <td id=\"L5142\" class=\"blob-num js-line-number\" data-line-number=\"5142\"></td>\n        <td id=\"LC5142\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">data</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>) { <span class=\"pl-en\">callback</span>(err); });</td>\n      </tr>\n      <tr>\n        <td id=\"L5143\" class=\"blob-num js-line-number\" data-line-number=\"5143\"></td>\n        <td id=\"LC5143\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">data</span>.<span class=\"pl-en\">on</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>end<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() { <span class=\"pl-en\">callback</span>(<span class=\"pl-c1\">null</span>, <span class=\"pl-smi\">hash</span>.<span class=\"pl-en\">digest</span>(digest)); });</td>\n      </tr>\n      <tr>\n        <td id=\"L5144\" class=\"blob-num js-line-number\" data-line-number=\"5144\"></td>\n        <td id=\"LC5144\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (callback <span class=\"pl-k\">&amp;&amp;</span> sliceFn <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>isBuffer <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5145\" class=\"blob-num js-line-number\" data-line-number=\"5145\"></td>\n        <td id=\"LC5145\" class=\"blob-code blob-code-inner js-file-line\">                 <span class=\"pl-k\">typeof</span> FileReader <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5146\" class=\"blob-num js-line-number\" data-line-number=\"5146\"></td>\n        <td id=\"LC5146\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> index <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, size <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1024</span> <span class=\"pl-k\">*</span> <span class=\"pl-c1\">512</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5147\" class=\"blob-num js-line-number\" data-line-number=\"5147\"></td>\n        <td id=\"LC5147\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> reader <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">FileReader</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L5148\" class=\"blob-num js-line-number\" data-line-number=\"5148\"></td>\n        <td id=\"LC5148\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">reader</span>.<span class=\"pl-en\">onerror</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L5149\" class=\"blob-num js-line-number\" data-line-number=\"5149\"></td>\n        <td id=\"LC5149\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-en\">callback</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Failed to read data.<span class=\"pl-pds\">&#39;</span></span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L5150\" class=\"blob-num js-line-number\" data-line-number=\"5150\"></td>\n        <td id=\"LC5150\" class=\"blob-code blob-code-inner js-file-line\">        };</td>\n      </tr>\n      <tr>\n        <td id=\"L5151\" class=\"blob-num js-line-number\" data-line-number=\"5151\"></td>\n        <td id=\"LC5151\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">reader</span>.<span class=\"pl-en\">onload</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L5152\" class=\"blob-num js-line-number\" data-line-number=\"5152\"></td>\n        <td id=\"LC5152\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> buf <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Uint8Array</span>(<span class=\"pl-smi\">reader</span>.<span class=\"pl-smi\">result</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L5153\" class=\"blob-num js-line-number\" data-line-number=\"5153\"></td>\n        <td id=\"LC5153\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">hash</span>.<span class=\"pl-en\">update</span>(buf);</td>\n      </tr>\n      <tr>\n        <td id=\"L5154\" class=\"blob-num js-line-number\" data-line-number=\"5154\"></td>\n        <td id=\"LC5154\" class=\"blob-code blob-code-inner js-file-line\">          index <span class=\"pl-k\">+=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5155\" class=\"blob-num js-line-number\" data-line-number=\"5155\"></td>\n        <td id=\"LC5155\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">reader</span>.<span class=\"pl-en\">_continueReading</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L5156\" class=\"blob-num js-line-number\" data-line-number=\"5156\"></td>\n        <td id=\"LC5156\" class=\"blob-code blob-code-inner js-file-line\">        };</td>\n      </tr>\n      <tr>\n        <td id=\"L5157\" class=\"blob-num js-line-number\" data-line-number=\"5157\"></td>\n        <td id=\"LC5157\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">reader</span>.<span class=\"pl-en\">_continueReading</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L5158\" class=\"blob-num js-line-number\" data-line-number=\"5158\"></td>\n        <td id=\"LC5158\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (index <span class=\"pl-k\">&gt;=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-c1\">size</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5159\" class=\"blob-num js-line-number\" data-line-number=\"5159\"></td>\n        <td id=\"LC5159\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-en\">callback</span>(<span class=\"pl-c1\">null</span>, <span class=\"pl-smi\">hash</span>.<span class=\"pl-en\">digest</span>(digest));</td>\n      </tr>\n      <tr>\n        <td id=\"L5160\" class=\"blob-num js-line-number\" data-line-number=\"5160\"></td>\n        <td id=\"LC5160\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5161\" class=\"blob-num js-line-number\" data-line-number=\"5161\"></td>\n        <td id=\"LC5161\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L5162\" class=\"blob-num js-line-number\" data-line-number=\"5162\"></td>\n        <td id=\"LC5162\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5163\" class=\"blob-num js-line-number\" data-line-number=\"5163\"></td>\n        <td id=\"LC5163\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> back <span class=\"pl-k\">=</span> index <span class=\"pl-k\">+</span> size;</td>\n      </tr>\n      <tr>\n        <td id=\"L5164\" class=\"blob-num js-line-number\" data-line-number=\"5164\"></td>\n        <td id=\"LC5164\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (back <span class=\"pl-k\">&gt;</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-c1\">size</span>) back <span class=\"pl-k\">=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-c1\">size</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5165\" class=\"blob-num js-line-number\" data-line-number=\"5165\"></td>\n        <td id=\"LC5165\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">reader</span>.<span class=\"pl-en\">readAsArrayBuffer</span>(<span class=\"pl-smi\">sliceFn</span>.<span class=\"pl-c1\">call</span>(data, index, back));</td>\n      </tr>\n      <tr>\n        <td id=\"L5166\" class=\"blob-num js-line-number\" data-line-number=\"5166\"></td>\n        <td id=\"LC5166\" class=\"blob-code blob-code-inner js-file-line\">        };</td>\n      </tr>\n      <tr>\n        <td id=\"L5167\" class=\"blob-num js-line-number\" data-line-number=\"5167\"></td>\n        <td id=\"LC5167\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5168\" class=\"blob-num js-line-number\" data-line-number=\"5168\"></td>\n        <td id=\"LC5168\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">reader</span>.<span class=\"pl-en\">_continueReading</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L5169\" class=\"blob-num js-line-number\" data-line-number=\"5169\"></td>\n        <td id=\"LC5169\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5170\" class=\"blob-num js-line-number\" data-line-number=\"5170\"></td>\n        <td id=\"LC5170\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isBrowser</span>() <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> data <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>isBuffer) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5171\" class=\"blob-num js-line-number\" data-line-number=\"5171\"></td>\n        <td id=\"LC5171\" class=\"blob-code blob-code-inner js-file-line\">          data <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Uint8Array</span>(data));</td>\n      </tr>\n      <tr>\n        <td id=\"L5172\" class=\"blob-num js-line-number\" data-line-number=\"5172\"></td>\n        <td id=\"LC5172\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L5173\" class=\"blob-num js-line-number\" data-line-number=\"5173\"></td>\n        <td id=\"LC5173\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> out <span class=\"pl-k\">=</span> <span class=\"pl-smi\">hash</span>.<span class=\"pl-en\">update</span>(data).<span class=\"pl-en\">digest</span>(digest);</td>\n      </tr>\n      <tr>\n        <td id=\"L5174\" class=\"blob-num js-line-number\" data-line-number=\"5174\"></td>\n        <td id=\"LC5174\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (callback) <span class=\"pl-en\">callback</span>(<span class=\"pl-c1\">null</span>, out);</td>\n      </tr>\n      <tr>\n        <td id=\"L5175\" class=\"blob-num js-line-number\" data-line-number=\"5175\"></td>\n        <td id=\"LC5175\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> out;</td>\n      </tr>\n      <tr>\n        <td id=\"L5176\" class=\"blob-num js-line-number\" data-line-number=\"5176\"></td>\n        <td id=\"LC5176\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5177\" class=\"blob-num js-line-number\" data-line-number=\"5177\"></td>\n        <td id=\"LC5177\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L5178\" class=\"blob-num js-line-number\" data-line-number=\"5178\"></td>\n        <td id=\"LC5178\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5179\" class=\"blob-num js-line-number\" data-line-number=\"5179\"></td>\n        <td id=\"LC5179\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">toHex</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">toHex</span>(<span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5180\" class=\"blob-num js-line-number\" data-line-number=\"5180\"></td>\n        <td id=\"LC5180\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> out <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L5181\" class=\"blob-num js-line-number\" data-line-number=\"5181\"></td>\n        <td id=\"LC5181\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5182\" class=\"blob-num js-line-number\" data-line-number=\"5182\"></td>\n        <td id=\"LC5182\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">out</span>.<span class=\"pl-c1\">push</span>((<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>0<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-c1\">charCodeAt</span>(i).<span class=\"pl-c1\">toString</span>(<span class=\"pl-c1\">16</span>)).<span class=\"pl-c1\">substr</span>(<span class=\"pl-k\">-</span><span class=\"pl-c1\">2</span>, <span class=\"pl-c1\">2</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L5183\" class=\"blob-num js-line-number\" data-line-number=\"5183\"></td>\n        <td id=\"LC5183\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5184\" class=\"blob-num js-line-number\" data-line-number=\"5184\"></td>\n        <td id=\"LC5184\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">out</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5185\" class=\"blob-num js-line-number\" data-line-number=\"5185\"></td>\n        <td id=\"LC5185\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L5186\" class=\"blob-num js-line-number\" data-line-number=\"5186\"></td>\n        <td id=\"LC5186\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5187\" class=\"blob-num js-line-number\" data-line-number=\"5187\"></td>\n        <td id=\"LC5187\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">createHash</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">createHash</span>(<span class=\"pl-smi\">algorithm</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5188\" class=\"blob-num js-line-number\" data-line-number=\"5188\"></td>\n        <td id=\"LC5188\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">cryptoLib</span>.<span class=\"pl-en\">createHash</span>(algorithm);</td>\n      </tr>\n      <tr>\n        <td id=\"L5189\" class=\"blob-num js-line-number\" data-line-number=\"5189\"></td>\n        <td id=\"LC5189\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5190\" class=\"blob-num js-line-number\" data-line-number=\"5190\"></td>\n        <td id=\"LC5190\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5191\" class=\"blob-num js-line-number\" data-line-number=\"5191\"></td>\n        <td id=\"LC5191\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5192\" class=\"blob-num js-line-number\" data-line-number=\"5192\"></td>\n        <td id=\"LC5192\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5193\" class=\"blob-num js-line-number\" data-line-number=\"5193\"></td>\n        <td id=\"LC5193\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5194\" class=\"blob-num js-line-number\" data-line-number=\"5194\"></td>\n        <td id=\"LC5194\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5195\" class=\"blob-num js-line-number\" data-line-number=\"5195\"></td>\n        <td id=\"LC5195\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5196\" class=\"blob-num js-line-number\" data-line-number=\"5196\"></td>\n        <td id=\"LC5196\" class=\"blob-code blob-code-inner js-file-line\">  abort<span class=\"pl-k\">:</span> {},</td>\n      </tr>\n      <tr>\n        <td id=\"L5197\" class=\"blob-num js-line-number\" data-line-number=\"5197\"></td>\n        <td id=\"LC5197\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5198\" class=\"blob-num js-line-number\" data-line-number=\"5198\"></td>\n        <td id=\"LC5198\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">each</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">each</span>(<span class=\"pl-smi\">object</span>, <span class=\"pl-smi\">iterFunction</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5199\" class=\"blob-num js-line-number\" data-line-number=\"5199\"></td>\n        <td id=\"LC5199\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> key <span class=\"pl-k\">in</span> object) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5200\" class=\"blob-num js-line-number\" data-line-number=\"5200\"></td>\n        <td id=\"LC5200\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(object, key)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5201\" class=\"blob-num js-line-number\" data-line-number=\"5201\"></td>\n        <td id=\"LC5201\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> ret <span class=\"pl-k\">=</span> <span class=\"pl-smi\">iterFunction</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, key, object[key]);</td>\n      </tr>\n      <tr>\n        <td id=\"L5202\" class=\"blob-num js-line-number\" data-line-number=\"5202\"></td>\n        <td id=\"LC5202\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (ret <span class=\"pl-k\">===</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">abort</span>) <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5203\" class=\"blob-num js-line-number\" data-line-number=\"5203\"></td>\n        <td id=\"LC5203\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5204\" class=\"blob-num js-line-number\" data-line-number=\"5204\"></td>\n        <td id=\"LC5204\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5205\" class=\"blob-num js-line-number\" data-line-number=\"5205\"></td>\n        <td id=\"LC5205\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5206\" class=\"blob-num js-line-number\" data-line-number=\"5206\"></td>\n        <td id=\"LC5206\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5207\" class=\"blob-num js-line-number\" data-line-number=\"5207\"></td>\n        <td id=\"LC5207\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">arrayEach</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">arrayEach</span>(<span class=\"pl-smi\">array</span>, <span class=\"pl-smi\">iterFunction</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5208\" class=\"blob-num js-line-number\" data-line-number=\"5208\"></td>\n        <td id=\"LC5208\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> idx <span class=\"pl-k\">in</span> array) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5209\" class=\"blob-num js-line-number\" data-line-number=\"5209\"></td>\n        <td id=\"LC5209\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">array</span>.<span class=\"pl-en\">hasOwnProperty</span>(idx)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5210\" class=\"blob-num js-line-number\" data-line-number=\"5210\"></td>\n        <td id=\"LC5210\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> ret <span class=\"pl-k\">=</span> <span class=\"pl-smi\">iterFunction</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, array[idx], <span class=\"pl-c1\">parseInt</span>(idx, <span class=\"pl-c1\">10</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L5211\" class=\"blob-num js-line-number\" data-line-number=\"5211\"></td>\n        <td id=\"LC5211\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (ret <span class=\"pl-k\">===</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-smi\">abort</span>) <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5212\" class=\"blob-num js-line-number\" data-line-number=\"5212\"></td>\n        <td id=\"LC5212\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5213\" class=\"blob-num js-line-number\" data-line-number=\"5213\"></td>\n        <td id=\"LC5213\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5214\" class=\"blob-num js-line-number\" data-line-number=\"5214\"></td>\n        <td id=\"LC5214\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5215\" class=\"blob-num js-line-number\" data-line-number=\"5215\"></td>\n        <td id=\"LC5215\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5216\" class=\"blob-num js-line-number\" data-line-number=\"5216\"></td>\n        <td id=\"LC5216\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">update</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">update</span>(<span class=\"pl-smi\">obj1</span>, <span class=\"pl-smi\">obj2</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5217\" class=\"blob-num js-line-number\" data-line-number=\"5217\"></td>\n        <td id=\"LC5217\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(obj2, <span class=\"pl-k\">function</span> <span class=\"pl-en\">iterator</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">item</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5218\" class=\"blob-num js-line-number\" data-line-number=\"5218\"></td>\n        <td id=\"LC5218\" class=\"blob-code blob-code-inner js-file-line\">      obj1[key] <span class=\"pl-k\">=</span> item;</td>\n      </tr>\n      <tr>\n        <td id=\"L5219\" class=\"blob-num js-line-number\" data-line-number=\"5219\"></td>\n        <td id=\"LC5219\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L5220\" class=\"blob-num js-line-number\" data-line-number=\"5220\"></td>\n        <td id=\"LC5220\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> obj1;</td>\n      </tr>\n      <tr>\n        <td id=\"L5221\" class=\"blob-num js-line-number\" data-line-number=\"5221\"></td>\n        <td id=\"LC5221\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5222\" class=\"blob-num js-line-number\" data-line-number=\"5222\"></td>\n        <td id=\"LC5222\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5223\" class=\"blob-num js-line-number\" data-line-number=\"5223\"></td>\n        <td id=\"LC5223\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">merge</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">merge</span>(<span class=\"pl-smi\">obj1</span>, <span class=\"pl-smi\">obj2</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5224\" class=\"blob-num js-line-number\" data-line-number=\"5224\"></td>\n        <td id=\"LC5224\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">update</span>(<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">copy</span>(obj1), obj2);</td>\n      </tr>\n      <tr>\n        <td id=\"L5225\" class=\"blob-num js-line-number\" data-line-number=\"5225\"></td>\n        <td id=\"LC5225\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5226\" class=\"blob-num js-line-number\" data-line-number=\"5226\"></td>\n        <td id=\"LC5226\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5227\" class=\"blob-num js-line-number\" data-line-number=\"5227\"></td>\n        <td id=\"LC5227\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">copy</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">copy</span>(<span class=\"pl-smi\">object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5228\" class=\"blob-num js-line-number\" data-line-number=\"5228\"></td>\n        <td id=\"LC5228\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (object <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> object <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) <span class=\"pl-k\">return</span> object;</td>\n      </tr>\n      <tr>\n        <td id=\"L5229\" class=\"blob-num js-line-number\" data-line-number=\"5229\"></td>\n        <td id=\"LC5229\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> dupe <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L5230\" class=\"blob-num js-line-number\" data-line-number=\"5230\"></td>\n        <td id=\"LC5230\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> key <span class=\"pl-k\">in</span> object) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5231\" class=\"blob-num js-line-number\" data-line-number=\"5231\"></td>\n        <td id=\"LC5231\" class=\"blob-code blob-code-inner js-file-line\">      dupe[key] <span class=\"pl-k\">=</span> object[key];</td>\n      </tr>\n      <tr>\n        <td id=\"L5232\" class=\"blob-num js-line-number\" data-line-number=\"5232\"></td>\n        <td id=\"LC5232\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5233\" class=\"blob-num js-line-number\" data-line-number=\"5233\"></td>\n        <td id=\"LC5233\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> dupe;</td>\n      </tr>\n      <tr>\n        <td id=\"L5234\" class=\"blob-num js-line-number\" data-line-number=\"5234\"></td>\n        <td id=\"LC5234\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5235\" class=\"blob-num js-line-number\" data-line-number=\"5235\"></td>\n        <td id=\"LC5235\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5236\" class=\"blob-num js-line-number\" data-line-number=\"5236\"></td>\n        <td id=\"LC5236\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">isEmpty</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">isEmpty</span>(<span class=\"pl-smi\">obj</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5237\" class=\"blob-num js-line-number\" data-line-number=\"5237\"></td>\n        <td id=\"LC5237\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> prop <span class=\"pl-k\">in</span> obj) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5238\" class=\"blob-num js-line-number\" data-line-number=\"5238\"></td>\n        <td id=\"LC5238\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">obj</span>.<span class=\"pl-en\">hasOwnProperty</span>(prop)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5239\" class=\"blob-num js-line-number\" data-line-number=\"5239\"></td>\n        <td id=\"LC5239\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5240\" class=\"blob-num js-line-number\" data-line-number=\"5240\"></td>\n        <td id=\"LC5240\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5241\" class=\"blob-num js-line-number\" data-line-number=\"5241\"></td>\n        <td id=\"LC5241\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5242\" class=\"blob-num js-line-number\" data-line-number=\"5242\"></td>\n        <td id=\"LC5242\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5243\" class=\"blob-num js-line-number\" data-line-number=\"5243\"></td>\n        <td id=\"LC5243\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5244\" class=\"blob-num js-line-number\" data-line-number=\"5244\"></td>\n        <td id=\"LC5244\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5245\" class=\"blob-num js-line-number\" data-line-number=\"5245\"></td>\n        <td id=\"LC5245\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">arraySliceFn</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">arraySliceFn</span>(<span class=\"pl-smi\">obj</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5246\" class=\"blob-num js-line-number\" data-line-number=\"5246\"></td>\n        <td id=\"LC5246\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> fn <span class=\"pl-k\">=</span> <span class=\"pl-smi\">obj</span>.<span class=\"pl-smi\">slice</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">obj</span>.<span class=\"pl-smi\">webkitSlice</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">obj</span>.<span class=\"pl-smi\">mozSlice</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5247\" class=\"blob-num js-line-number\" data-line-number=\"5247\"></td>\n        <td id=\"LC5247\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> fn <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">?</span> fn <span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5248\" class=\"blob-num js-line-number\" data-line-number=\"5248\"></td>\n        <td id=\"LC5248\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5249\" class=\"blob-num js-line-number\" data-line-number=\"5249\"></td>\n        <td id=\"LC5249\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5250\" class=\"blob-num js-line-number\" data-line-number=\"5250\"></td>\n        <td id=\"LC5250\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">isType</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">isType</span>(<span class=\"pl-smi\">obj</span>, <span class=\"pl-smi\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5251\" class=\"blob-num js-line-number\" data-line-number=\"5251\"></td>\n        <td id=\"LC5251\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> type <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) type <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">typeName</span>(type);</td>\n      </tr>\n      <tr>\n        <td id=\"L5252\" class=\"blob-num js-line-number\" data-line-number=\"5252\"></td>\n        <td id=\"LC5252\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>.<span class=\"pl-c1\">call</span>(obj) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> type <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5253\" class=\"blob-num js-line-number\" data-line-number=\"5253\"></td>\n        <td id=\"LC5253\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5254\" class=\"blob-num js-line-number\" data-line-number=\"5254\"></td>\n        <td id=\"LC5254\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5255\" class=\"blob-num js-line-number\" data-line-number=\"5255\"></td>\n        <td id=\"LC5255\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">typeName</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">typeName</span>(<span class=\"pl-smi\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5256\" class=\"blob-num js-line-number\" data-line-number=\"5256\"></td>\n        <td id=\"LC5256\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">type</span>.<span class=\"pl-en\">hasOwnProperty</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>name<span class=\"pl-pds\">&#39;</span></span>)) <span class=\"pl-k\">return</span> <span class=\"pl-smi\">type</span>.<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5257\" class=\"blob-num js-line-number\" data-line-number=\"5257\"></td>\n        <td id=\"LC5257\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> str <span class=\"pl-k\">=</span> <span class=\"pl-smi\">type</span>.<span class=\"pl-c1\">toString</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L5258\" class=\"blob-num js-line-number\" data-line-number=\"5258\"></td>\n        <td id=\"LC5258\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> match <span class=\"pl-k\">=</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">*</span>function (<span class=\"pl-c1\">.</span><span class=\"pl-k\">+</span>)<span class=\"pl-cce\">\\(</span><span class=\"pl-pds\">/</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5259\" class=\"blob-num js-line-number\" data-line-number=\"5259\"></td>\n        <td id=\"LC5259\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> match <span class=\"pl-k\">?</span> match[<span class=\"pl-c1\">1</span>] <span class=\"pl-k\">:</span> str;</td>\n      </tr>\n      <tr>\n        <td id=\"L5260\" class=\"blob-num js-line-number\" data-line-number=\"5260\"></td>\n        <td id=\"LC5260\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5261\" class=\"blob-num js-line-number\" data-line-number=\"5261\"></td>\n        <td id=\"LC5261\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5262\" class=\"blob-num js-line-number\" data-line-number=\"5262\"></td>\n        <td id=\"LC5262\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">error</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">error</span>(<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5263\" class=\"blob-num js-line-number\" data-line-number=\"5263\"></td>\n        <td id=\"LC5263\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> originalError <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5264\" class=\"blob-num js-line-number\" data-line-number=\"5264\"></td>\n        <td id=\"LC5264\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5265\" class=\"blob-num js-line-number\" data-line-number=\"5265\"></td>\n        <td id=\"LC5265\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> options <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> (options <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">message</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5266\" class=\"blob-num js-line-number\" data-line-number=\"5266\"></td>\n        <td id=\"LC5266\" class=\"blob-code blob-code-inner js-file-line\">        originalError <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">copy</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L5267\" class=\"blob-num js-line-number\" data-line-number=\"5267\"></td>\n        <td id=\"LC5267\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">originalError</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">message</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5268\" class=\"blob-num js-line-number\" data-line-number=\"5268\"></td>\n        <td id=\"LC5268\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5269\" class=\"blob-num js-line-number\" data-line-number=\"5269\"></td>\n        <td id=\"LC5269\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5270\" class=\"blob-num js-line-number\" data-line-number=\"5270\"></td>\n        <td id=\"LC5270\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5271\" class=\"blob-num js-line-number\" data-line-number=\"5271\"></td>\n        <td id=\"LC5271\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5272\" class=\"blob-num js-line-number\" data-line-number=\"5272\"></td>\n        <td id=\"LC5272\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> options <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5273\" class=\"blob-num js-line-number\" data-line-number=\"5273\"></td>\n        <td id=\"LC5273\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">=</span> options;</td>\n      </tr>\n      <tr>\n        <td id=\"L5274\" class=\"blob-num js-line-number\" data-line-number=\"5274\"></td>\n        <td id=\"LC5274\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> options <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> options <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5275\" class=\"blob-num js-line-number\" data-line-number=\"5275\"></td>\n        <td id=\"LC5275\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">update</span>(err, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L5276\" class=\"blob-num js-line-number\" data-line-number=\"5276\"></td>\n        <td id=\"LC5276\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">message</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5277\" class=\"blob-num js-line-number\" data-line-number=\"5277\"></td>\n        <td id=\"LC5277\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">message</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5278\" class=\"blob-num js-line-number\" data-line-number=\"5278\"></td>\n        <td id=\"LC5278\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">options</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-c1\">name</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5279\" class=\"blob-num js-line-number\" data-line-number=\"5279\"></td>\n        <td id=\"LC5279\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">err</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5280\" class=\"blob-num js-line-number\" data-line-number=\"5280\"></td>\n        <td id=\"LC5280\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">stack</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5281\" class=\"blob-num js-line-number\" data-line-number=\"5281\"></td>\n        <td id=\"LC5281\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">stack</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">stack</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5282\" class=\"blob-num js-line-number\" data-line-number=\"5282\"></td>\n        <td id=\"LC5282\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5283\" class=\"blob-num js-line-number\" data-line-number=\"5283\"></td>\n        <td id=\"LC5283\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5284\" class=\"blob-num js-line-number\" data-line-number=\"5284\"></td>\n        <td id=\"LC5284\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-smi\">defineProperty</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5285\" class=\"blob-num js-line-number\" data-line-number=\"5285\"></td>\n        <td id=\"LC5285\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">defineProperty</span>(err, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>name<span class=\"pl-pds\">&#39;</span></span>, {writable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>, enumerable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L5286\" class=\"blob-num js-line-number\" data-line-number=\"5286\"></td>\n        <td id=\"LC5286\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">defineProperty</span>(err, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>message<span class=\"pl-pds\">&#39;</span></span>, {enumerable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L5287\" class=\"blob-num js-line-number\" data-line-number=\"5287\"></td>\n        <td id=\"LC5287\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5288\" class=\"blob-num js-line-number\" data-line-number=\"5288\"></td>\n        <td id=\"LC5288\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5289\" class=\"blob-num js-line-number\" data-line-number=\"5289\"></td>\n        <td id=\"LC5289\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">err</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">=</span> options <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">err</span>.<span class=\"pl-c1\">code</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Error<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5290\" class=\"blob-num js-line-number\" data-line-number=\"5290\"></td>\n        <td id=\"LC5290\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">time</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L5291\" class=\"blob-num js-line-number\" data-line-number=\"5291\"></td>\n        <td id=\"LC5291\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5292\" class=\"blob-num js-line-number\" data-line-number=\"5292\"></td>\n        <td id=\"LC5292\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (originalError) <span class=\"pl-smi\">err</span>.<span class=\"pl-smi\">originalError</span> <span class=\"pl-k\">=</span> originalError;</td>\n      </tr>\n      <tr>\n        <td id=\"L5293\" class=\"blob-num js-line-number\" data-line-number=\"5293\"></td>\n        <td id=\"LC5293\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5294\" class=\"blob-num js-line-number\" data-line-number=\"5294\"></td>\n        <td id=\"LC5294\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> err;</td>\n      </tr>\n      <tr>\n        <td id=\"L5295\" class=\"blob-num js-line-number\" data-line-number=\"5295\"></td>\n        <td id=\"LC5295\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5296\" class=\"blob-num js-line-number\" data-line-number=\"5296\"></td>\n        <td id=\"LC5296\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5297\" class=\"blob-num js-line-number\" data-line-number=\"5297\"></td>\n        <td id=\"LC5297\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5298\" class=\"blob-num js-line-number\" data-line-number=\"5298\"></td>\n        <td id=\"LC5298\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">inherit</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">inherit</span>(<span class=\"pl-smi\">klass</span>, <span class=\"pl-smi\">features</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5299\" class=\"blob-num js-line-number\" data-line-number=\"5299\"></td>\n        <td id=\"LC5299\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> newObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5300\" class=\"blob-num js-line-number\" data-line-number=\"5300\"></td>\n        <td id=\"LC5300\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (features <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5301\" class=\"blob-num js-line-number\" data-line-number=\"5301\"></td>\n        <td id=\"LC5301\" class=\"blob-code blob-code-inner js-file-line\">      features <span class=\"pl-k\">=</span> klass;</td>\n      </tr>\n      <tr>\n        <td id=\"L5302\" class=\"blob-num js-line-number\" data-line-number=\"5302\"></td>\n        <td id=\"LC5302\" class=\"blob-code blob-code-inner js-file-line\">      klass <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5303\" class=\"blob-num js-line-number\" data-line-number=\"5303\"></td>\n        <td id=\"LC5303\" class=\"blob-code blob-code-inner js-file-line\">      newObject <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L5304\" class=\"blob-num js-line-number\" data-line-number=\"5304\"></td>\n        <td id=\"LC5304\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5305\" class=\"blob-num js-line-number\" data-line-number=\"5305\"></td>\n        <td id=\"LC5305\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> <span class=\"pl-en\">ctor</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">ConstructorWrapper</span>() {};</td>\n      </tr>\n      <tr>\n        <td id=\"L5306\" class=\"blob-num js-line-number\" data-line-number=\"5306\"></td>\n        <td id=\"LC5306\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">ctor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">klass</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5307\" class=\"blob-num js-line-number\" data-line-number=\"5307\"></td>\n        <td id=\"LC5307\" class=\"blob-code blob-code-inner js-file-line\">      newObject <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">ctor</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L5308\" class=\"blob-num js-line-number\" data-line-number=\"5308\"></td>\n        <td id=\"LC5308\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5309\" class=\"blob-num js-line-number\" data-line-number=\"5309\"></td>\n        <td id=\"LC5309\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5310\" class=\"blob-num js-line-number\" data-line-number=\"5310\"></td>\n        <td id=\"LC5310\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">features</span>.<span class=\"pl-c1\">constructor</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">Object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5311\" class=\"blob-num js-line-number\" data-line-number=\"5311\"></td>\n        <td id=\"LC5311\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">features</span>.<span class=\"pl-en\">constructor</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L5312\" class=\"blob-num js-line-number\" data-line-number=\"5312\"></td>\n        <td id=\"LC5312\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (klass <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">Object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5313\" class=\"blob-num js-line-number\" data-line-number=\"5313\"></td>\n        <td id=\"LC5313\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">return</span> <span class=\"pl-smi\">klass</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5314\" class=\"blob-num js-line-number\" data-line-number=\"5314\"></td>\n        <td id=\"LC5314\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L5315\" class=\"blob-num js-line-number\" data-line-number=\"5315\"></td>\n        <td id=\"LC5315\" class=\"blob-code blob-code-inner js-file-line\">      };</td>\n      </tr>\n      <tr>\n        <td id=\"L5316\" class=\"blob-num js-line-number\" data-line-number=\"5316\"></td>\n        <td id=\"LC5316\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5317\" class=\"blob-num js-line-number\" data-line-number=\"5317\"></td>\n        <td id=\"LC5317\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5318\" class=\"blob-num js-line-number\" data-line-number=\"5318\"></td>\n        <td id=\"LC5318\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">features</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> newObject;</td>\n      </tr>\n      <tr>\n        <td id=\"L5319\" class=\"blob-num js-line-number\" data-line-number=\"5319\"></td>\n        <td id=\"LC5319\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">update</span>(<span class=\"pl-smi\">features</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">prototype</span>, features);</td>\n      </tr>\n      <tr>\n        <td id=\"L5320\" class=\"blob-num js-line-number\" data-line-number=\"5320\"></td>\n        <td id=\"LC5320\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">features</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-smi\">__super__</span> <span class=\"pl-k\">=</span> klass;</td>\n      </tr>\n      <tr>\n        <td id=\"L5321\" class=\"blob-num js-line-number\" data-line-number=\"5321\"></td>\n        <td id=\"LC5321\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">features</span>.<span class=\"pl-c1\">constructor</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5322\" class=\"blob-num js-line-number\" data-line-number=\"5322\"></td>\n        <td id=\"LC5322\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5323\" class=\"blob-num js-line-number\" data-line-number=\"5323\"></td>\n        <td id=\"LC5323\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5324\" class=\"blob-num js-line-number\" data-line-number=\"5324\"></td>\n        <td id=\"LC5324\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5325\" class=\"blob-num js-line-number\" data-line-number=\"5325\"></td>\n        <td id=\"LC5325\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">mixin</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">mixin</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L5326\" class=\"blob-num js-line-number\" data-line-number=\"5326\"></td>\n        <td id=\"LC5326\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> klass <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L5327\" class=\"blob-num js-line-number\" data-line-number=\"5327\"></td>\n        <td id=\"LC5327\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-v\">arguments</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5328\" class=\"blob-num js-line-number\" data-line-number=\"5328\"></td>\n        <td id=\"LC5328\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> prop <span class=\"pl-k\">in</span> <span class=\"pl-v\">arguments</span>[i].<span class=\"pl-c1\">prototype</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5329\" class=\"blob-num js-line-number\" data-line-number=\"5329\"></td>\n        <td id=\"LC5329\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> fn <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>[i].<span class=\"pl-c1\">prototype</span>[prop];</td>\n      </tr>\n      <tr>\n        <td id=\"L5330\" class=\"blob-num js-line-number\" data-line-number=\"5330\"></td>\n        <td id=\"LC5330\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (prop <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>constructor<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5331\" class=\"blob-num js-line-number\" data-line-number=\"5331\"></td>\n        <td id=\"LC5331\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">klass</span>.<span class=\"pl-c1\">prototype</span>[prop] <span class=\"pl-k\">=</span> fn;</td>\n      </tr>\n      <tr>\n        <td id=\"L5332\" class=\"blob-num js-line-number\" data-line-number=\"5332\"></td>\n        <td id=\"LC5332\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L5333\" class=\"blob-num js-line-number\" data-line-number=\"5333\"></td>\n        <td id=\"LC5333\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5334\" class=\"blob-num js-line-number\" data-line-number=\"5334\"></td>\n        <td id=\"LC5334\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5335\" class=\"blob-num js-line-number\" data-line-number=\"5335\"></td>\n        <td id=\"LC5335\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> klass;</td>\n      </tr>\n      <tr>\n        <td id=\"L5336\" class=\"blob-num js-line-number\" data-line-number=\"5336\"></td>\n        <td id=\"LC5336\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5337\" class=\"blob-num js-line-number\" data-line-number=\"5337\"></td>\n        <td id=\"LC5337\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5338\" class=\"blob-num js-line-number\" data-line-number=\"5338\"></td>\n        <td id=\"LC5338\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5339\" class=\"blob-num js-line-number\" data-line-number=\"5339\"></td>\n        <td id=\"LC5339\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">hideProperties</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">hideProperties</span>(<span class=\"pl-smi\">obj</span>, <span class=\"pl-smi\">props</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5340\" class=\"blob-num js-line-number\" data-line-number=\"5340\"></td>\n        <td id=\"LC5340\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-smi\">defineProperty</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5341\" class=\"blob-num js-line-number\" data-line-number=\"5341\"></td>\n        <td id=\"LC5341\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5342\" class=\"blob-num js-line-number\" data-line-number=\"5342\"></td>\n        <td id=\"LC5342\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(props, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5343\" class=\"blob-num js-line-number\" data-line-number=\"5343\"></td>\n        <td id=\"LC5343\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">defineProperty</span>(obj, key, {</td>\n      </tr>\n      <tr>\n        <td id=\"L5344\" class=\"blob-num js-line-number\" data-line-number=\"5344\"></td>\n        <td id=\"LC5344\" class=\"blob-code blob-code-inner js-file-line\">        enumerable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>, writable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>, configurable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span> });</td>\n      </tr>\n      <tr>\n        <td id=\"L5345\" class=\"blob-num js-line-number\" data-line-number=\"5345\"></td>\n        <td id=\"LC5345\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L5346\" class=\"blob-num js-line-number\" data-line-number=\"5346\"></td>\n        <td id=\"LC5346\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5347\" class=\"blob-num js-line-number\" data-line-number=\"5347\"></td>\n        <td id=\"LC5347\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5348\" class=\"blob-num js-line-number\" data-line-number=\"5348\"></td>\n        <td id=\"LC5348\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5349\" class=\"blob-num js-line-number\" data-line-number=\"5349\"></td>\n        <td id=\"LC5349\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">property</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">property</span>(<span class=\"pl-smi\">obj</span>, <span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">enumerable</span>, <span class=\"pl-smi\">isValue</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5350\" class=\"blob-num js-line-number\" data-line-number=\"5350\"></td>\n        <td id=\"LC5350\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> opts <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5351\" class=\"blob-num js-line-number\" data-line-number=\"5351\"></td>\n        <td id=\"LC5351\" class=\"blob-code blob-code-inner js-file-line\">      configurable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5352\" class=\"blob-num js-line-number\" data-line-number=\"5352\"></td>\n        <td id=\"LC5352\" class=\"blob-code blob-code-inner js-file-line\">      enumerable<span class=\"pl-k\">:</span> enumerable <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">?</span> enumerable <span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5353\" class=\"blob-num js-line-number\" data-line-number=\"5353\"></td>\n        <td id=\"LC5353\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L5354\" class=\"blob-num js-line-number\" data-line-number=\"5354\"></td>\n        <td id=\"LC5354\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>isValue) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5355\" class=\"blob-num js-line-number\" data-line-number=\"5355\"></td>\n        <td id=\"LC5355\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">opts</span>.<span class=\"pl-smi\">get</span> <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L5356\" class=\"blob-num js-line-number\" data-line-number=\"5356\"></td>\n        <td id=\"LC5356\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5357\" class=\"blob-num js-line-number\" data-line-number=\"5357\"></td>\n        <td id=\"LC5357\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5358\" class=\"blob-num js-line-number\" data-line-number=\"5358\"></td>\n        <td id=\"LC5358\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">opts</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">=</span> value; <span class=\"pl-smi\">opts</span>.<span class=\"pl-smi\">writable</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5359\" class=\"blob-num js-line-number\" data-line-number=\"5359\"></td>\n        <td id=\"LC5359\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5360\" class=\"blob-num js-line-number\" data-line-number=\"5360\"></td>\n        <td id=\"LC5360\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5361\" class=\"blob-num js-line-number\" data-line-number=\"5361\"></td>\n        <td id=\"LC5361\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">defineProperty</span>(obj, name, opts);</td>\n      </tr>\n      <tr>\n        <td id=\"L5362\" class=\"blob-num js-line-number\" data-line-number=\"5362\"></td>\n        <td id=\"LC5362\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5363\" class=\"blob-num js-line-number\" data-line-number=\"5363\"></td>\n        <td id=\"LC5363\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5364\" class=\"blob-num js-line-number\" data-line-number=\"5364\"></td>\n        <td id=\"LC5364\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5365\" class=\"blob-num js-line-number\" data-line-number=\"5365\"></td>\n        <td id=\"LC5365\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">memoizedProperty</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">memoizedProperty</span>(<span class=\"pl-smi\">obj</span>, <span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">get</span>, <span class=\"pl-smi\">enumerable</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5366\" class=\"blob-num js-line-number\" data-line-number=\"5366\"></td>\n        <td id=\"LC5366\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> cachedValue <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5367\" class=\"blob-num js-line-number\" data-line-number=\"5367\"></td>\n        <td id=\"LC5367\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5368\" class=\"blob-num js-line-number\" data-line-number=\"5368\"></td>\n        <td id=\"LC5368\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">property</span>(obj, name, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L5369\" class=\"blob-num js-line-number\" data-line-number=\"5369\"></td>\n        <td id=\"LC5369\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (cachedValue <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5370\" class=\"blob-num js-line-number\" data-line-number=\"5370\"></td>\n        <td id=\"LC5370\" class=\"blob-code blob-code-inner js-file-line\">        cachedValue <span class=\"pl-k\">=</span> <span class=\"pl-en\">get</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L5371\" class=\"blob-num js-line-number\" data-line-number=\"5371\"></td>\n        <td id=\"LC5371\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5372\" class=\"blob-num js-line-number\" data-line-number=\"5372\"></td>\n        <td id=\"LC5372\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> cachedValue;</td>\n      </tr>\n      <tr>\n        <td id=\"L5373\" class=\"blob-num js-line-number\" data-line-number=\"5373\"></td>\n        <td id=\"LC5373\" class=\"blob-code blob-code-inner js-file-line\">    }, enumerable);</td>\n      </tr>\n      <tr>\n        <td id=\"L5374\" class=\"blob-num js-line-number\" data-line-number=\"5374\"></td>\n        <td id=\"LC5374\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5375\" class=\"blob-num js-line-number\" data-line-number=\"5375\"></td>\n        <td id=\"LC5375\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5376\" class=\"blob-num js-line-number\" data-line-number=\"5376\"></td>\n        <td id=\"LC5376\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5377\" class=\"blob-num js-line-number\" data-line-number=\"5377\"></td>\n        <td id=\"LC5377\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">hoistPayloadMember</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">hoistPayloadMember</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5378\" class=\"blob-num js-line-number\" data-line-number=\"5378\"></td>\n        <td id=\"LC5378\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> req <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">request</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5379\" class=\"blob-num js-line-number\" data-line-number=\"5379\"></td>\n        <td id=\"LC5379\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> operation <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">operation</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5380\" class=\"blob-num js-line-number\" data-line-number=\"5380\"></td>\n        <td id=\"LC5380\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> output <span class=\"pl-k\">=</span> <span class=\"pl-smi\">req</span>.<span class=\"pl-smi\">service</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">operations</span>[operation].<span class=\"pl-smi\">output</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5381\" class=\"blob-num js-line-number\" data-line-number=\"5381\"></td>\n        <td id=\"LC5381\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">output</span>.<span class=\"pl-smi\">payload</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5382\" class=\"blob-num js-line-number\" data-line-number=\"5382\"></td>\n        <td id=\"LC5382\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> payloadMember <span class=\"pl-k\">=</span> <span class=\"pl-smi\">output</span>.<span class=\"pl-smi\">members</span>[<span class=\"pl-smi\">output</span>.<span class=\"pl-smi\">payload</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L5383\" class=\"blob-num js-line-number\" data-line-number=\"5383\"></td>\n        <td id=\"LC5383\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> responsePayload <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>[<span class=\"pl-smi\">output</span>.<span class=\"pl-smi\">payload</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L5384\" class=\"blob-num js-line-number\" data-line-number=\"5384\"></td>\n        <td id=\"LC5384\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">payloadMember</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5385\" class=\"blob-num js-line-number\" data-line-number=\"5385\"></td>\n        <td id=\"LC5385\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(responsePayload, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5386\" class=\"blob-num js-line-number\" data-line-number=\"5386\"></td>\n        <td id=\"LC5386\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">property</span>(<span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>, key, value, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5387\" class=\"blob-num js-line-number\" data-line-number=\"5387\"></td>\n        <td id=\"LC5387\" class=\"blob-code blob-code-inner js-file-line\">        });</td>\n      </tr>\n      <tr>\n        <td id=\"L5388\" class=\"blob-num js-line-number\" data-line-number=\"5388\"></td>\n        <td id=\"LC5388\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5389\" class=\"blob-num js-line-number\" data-line-number=\"5389\"></td>\n        <td id=\"LC5389\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5390\" class=\"blob-num js-line-number\" data-line-number=\"5390\"></td>\n        <td id=\"LC5390\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5391\" class=\"blob-num js-line-number\" data-line-number=\"5391\"></td>\n        <td id=\"LC5391\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5392\" class=\"blob-num js-line-number\" data-line-number=\"5392\"></td>\n        <td id=\"LC5392\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5393\" class=\"blob-num js-line-number\" data-line-number=\"5393\"></td>\n        <td id=\"LC5393\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">computeSha256</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">computeSha256</span>(<span class=\"pl-smi\">body</span>, <span class=\"pl-smi\">done</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5394\" class=\"blob-num js-line-number\" data-line-number=\"5394\"></td>\n        <td id=\"LC5394\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">util</span>.<span class=\"pl-en\">isNode</span>()) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5395\" class=\"blob-num js-line-number\" data-line-number=\"5395\"></td>\n        <td id=\"LC5395\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> Stream <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">nodeRequire</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>stream<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-smi\">Stream</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5396\" class=\"blob-num js-line-number\" data-line-number=\"5396\"></td>\n        <td id=\"LC5396\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> fs <span class=\"pl-k\">=</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">nodeRequire</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>fs<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5397\" class=\"blob-num js-line-number\" data-line-number=\"5397\"></td>\n        <td id=\"LC5397\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (body <span class=\"pl-k\">instanceof</span> Stream) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5398\" class=\"blob-num js-line-number\" data-line-number=\"5398\"></td>\n        <td id=\"LC5398\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">body</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) { <span class=\"pl-c\">// assume file object</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5399\" class=\"blob-num js-line-number\" data-line-number=\"5399\"></td>\n        <td id=\"LC5399\" class=\"blob-code blob-code-inner js-file-line\">          body <span class=\"pl-k\">=</span> <span class=\"pl-smi\">fs</span>.<span class=\"pl-en\">createReadStream</span>(<span class=\"pl-smi\">body</span>.<span class=\"pl-smi\">path</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5400\" class=\"blob-num js-line-number\" data-line-number=\"5400\"></td>\n        <td id=\"LC5400\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> { <span class=\"pl-c\">// TODO support other stream types</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5401\" class=\"blob-num js-line-number\" data-line-number=\"5401\"></td>\n        <td id=\"LC5401\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">return</span> <span class=\"pl-en\">done</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Non-file stream objects are <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5402\" class=\"blob-num js-line-number\" data-line-number=\"5402\"></td>\n        <td id=\"LC5402\" class=\"blob-code blob-code-inner js-file-line\">                                <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>not supported with SigV4<span class=\"pl-pds\">&#39;</span></span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L5403\" class=\"blob-num js-line-number\" data-line-number=\"5403\"></td>\n        <td id=\"LC5403\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L5404\" class=\"blob-num js-line-number\" data-line-number=\"5404\"></td>\n        <td id=\"LC5404\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5405\" class=\"blob-num js-line-number\" data-line-number=\"5405\"></td>\n        <td id=\"LC5405\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5406\" class=\"blob-num js-line-number\" data-line-number=\"5406\"></td>\n        <td id=\"LC5406\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5407\" class=\"blob-num js-line-number\" data-line-number=\"5407\"></td>\n        <td id=\"LC5407\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-c1\">crypto</span>.<span class=\"pl-en\">sha256</span>(body, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>hex<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">err</span>, <span class=\"pl-smi\">sha</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5408\" class=\"blob-num js-line-number\" data-line-number=\"5408\"></td>\n        <td id=\"LC5408\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (err) <span class=\"pl-en\">done</span>(err);</td>\n      </tr>\n      <tr>\n        <td id=\"L5409\" class=\"blob-num js-line-number\" data-line-number=\"5409\"></td>\n        <td id=\"LC5409\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">else</span> <span class=\"pl-en\">done</span>(<span class=\"pl-c1\">null</span>, sha);</td>\n      </tr>\n      <tr>\n        <td id=\"L5410\" class=\"blob-num js-line-number\" data-line-number=\"5410\"></td>\n        <td id=\"LC5410\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L5411\" class=\"blob-num js-line-number\" data-line-number=\"5411\"></td>\n        <td id=\"LC5411\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5412\" class=\"blob-num js-line-number\" data-line-number=\"5412\"></td>\n        <td id=\"LC5412\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5413\" class=\"blob-num js-line-number\" data-line-number=\"5413\"></td>\n        <td id=\"LC5413\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5414\" class=\"blob-num js-line-number\" data-line-number=\"5414\"></td>\n        <td id=\"LC5414\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">isClockSkewed</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">isClockSkewed</span>(<span class=\"pl-smi\">serverTime</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5415\" class=\"blob-num js-line-number\" data-line-number=\"5415\"></td>\n        <td id=\"LC5415\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (serverTime) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5416\" class=\"blob-num js-line-number\" data-line-number=\"5416\"></td>\n        <td id=\"LC5416\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">property</span>(<span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>isClockSkewed<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5417\" class=\"blob-num js-line-number\" data-line-number=\"5417\"></td>\n        <td id=\"LC5417\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">abs</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>().<span class=\"pl-c1\">getTime</span>() <span class=\"pl-k\">-</span> serverTime) <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">300000</span>, <span class=\"pl-c1\">false</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5418\" class=\"blob-num js-line-number\" data-line-number=\"5418\"></td>\n        <td id=\"LC5418\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">isClockSkewed</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5419\" class=\"blob-num js-line-number\" data-line-number=\"5419\"></td>\n        <td id=\"LC5419\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5420\" class=\"blob-num js-line-number\" data-line-number=\"5420\"></td>\n        <td id=\"LC5420\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5421\" class=\"blob-num js-line-number\" data-line-number=\"5421\"></td>\n        <td id=\"LC5421\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5422\" class=\"blob-num js-line-number\" data-line-number=\"5422\"></td>\n        <td id=\"LC5422\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">applyClockOffset</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">applyClockOffset</span>(<span class=\"pl-smi\">serverTime</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5423\" class=\"blob-num js-line-number\" data-line-number=\"5423\"></td>\n        <td id=\"LC5423\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (serverTime)</td>\n      </tr>\n      <tr>\n        <td id=\"L5424\" class=\"blob-num js-line-number\" data-line-number=\"5424\"></td>\n        <td id=\"LC5424\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">AWS</span>.<span class=\"pl-smi\">config</span>.<span class=\"pl-smi\">systemClockOffset</span> <span class=\"pl-k\">=</span> serverTime <span class=\"pl-k\">-</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>().<span class=\"pl-c1\">getTime</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L5425\" class=\"blob-num js-line-number\" data-line-number=\"5425\"></td>\n        <td id=\"LC5425\" class=\"blob-code blob-code-inner js-file-line\">  },</td>\n      </tr>\n      <tr>\n        <td id=\"L5426\" class=\"blob-num js-line-number\" data-line-number=\"5426\"></td>\n        <td id=\"LC5426\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5427\" class=\"blob-num js-line-number\" data-line-number=\"5427\"></td>\n        <td id=\"LC5427\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5428\" class=\"blob-num js-line-number\" data-line-number=\"5428\"></td>\n        <td id=\"LC5428\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">extractRequestId</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">extractRequestId</span>(<span class=\"pl-smi\">resp</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5429\" class=\"blob-num js-line-number\" data-line-number=\"5429\"></td>\n        <td id=\"LC5429\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> requestId <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>x-amz-request-id<span class=\"pl-pds\">&#39;</span></span>] <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5430\" class=\"blob-num js-line-number\" data-line-number=\"5430\"></td>\n        <td id=\"LC5430\" class=\"blob-code blob-code-inner js-file-line\">                     <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">httpResponse</span>.<span class=\"pl-c1\">headers</span>[<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>x-amzn-requestid<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L5431\" class=\"blob-num js-line-number\" data-line-number=\"5431\"></td>\n        <td id=\"LC5431\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5432\" class=\"blob-num js-line-number\" data-line-number=\"5432\"></td>\n        <td id=\"LC5432\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>requestId <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>.<span class=\"pl-smi\">ResponseMetadata</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5433\" class=\"blob-num js-line-number\" data-line-number=\"5433\"></td>\n        <td id=\"LC5433\" class=\"blob-code blob-code-inner js-file-line\">      requestId <span class=\"pl-k\">=</span> <span class=\"pl-smi\">resp</span>.<span class=\"pl-c1\">data</span>.<span class=\"pl-smi\">ResponseMetadata</span>.<span class=\"pl-smi\">RequestId</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5434\" class=\"blob-num js-line-number\" data-line-number=\"5434\"></td>\n        <td id=\"LC5434\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5435\" class=\"blob-num js-line-number\" data-line-number=\"5435\"></td>\n        <td id=\"LC5435\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5436\" class=\"blob-num js-line-number\" data-line-number=\"5436\"></td>\n        <td id=\"LC5436\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (requestId) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5437\" class=\"blob-num js-line-number\" data-line-number=\"5437\"></td>\n        <td id=\"LC5437\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">requestId</span> <span class=\"pl-k\">=</span> requestId;</td>\n      </tr>\n      <tr>\n        <td id=\"L5438\" class=\"blob-num js-line-number\" data-line-number=\"5438\"></td>\n        <td id=\"LC5438\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5439\" class=\"blob-num js-line-number\" data-line-number=\"5439\"></td>\n        <td id=\"LC5439\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5440\" class=\"blob-num js-line-number\" data-line-number=\"5440\"></td>\n        <td id=\"LC5440\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5441\" class=\"blob-num js-line-number\" data-line-number=\"5441\"></td>\n        <td id=\"LC5441\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">resp</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-smi\">requestId</span> <span class=\"pl-k\">=</span> requestId;</td>\n      </tr>\n      <tr>\n        <td id=\"L5442\" class=\"blob-num js-line-number\" data-line-number=\"5442\"></td>\n        <td id=\"LC5442\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5443\" class=\"blob-num js-line-number\" data-line-number=\"5443\"></td>\n        <td id=\"LC5443\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5444\" class=\"blob-num js-line-number\" data-line-number=\"5444\"></td>\n        <td id=\"LC5444\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L5445\" class=\"blob-num js-line-number\" data-line-number=\"5445\"></td>\n        <td id=\"LC5445\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5446\" class=\"blob-num js-line-number\" data-line-number=\"5446\"></td>\n        <td id=\"LC5446\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> util;</td>\n      </tr>\n      <tr>\n        <td id=\"L5447\" class=\"blob-num js-line-number\" data-line-number=\"5447\"></td>\n        <td id=\"LC5447\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5448\" class=\"blob-num js-line-number\" data-line-number=\"5448\"></td>\n        <td id=\"LC5448\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>,<span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>FWaASH<span class=\"pl-pds\">&quot;</span></span>))</td>\n      </tr>\n      <tr>\n        <td id=\"L5449\" class=\"blob-num js-line-number\" data-line-number=\"5449\"></td>\n        <td id=\"LC5449\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./core<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">3</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>FWaASH<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">58</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>buffer<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">47</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>crypto<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">51</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>querystring<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">62</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>url<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">63</span>}],<span class=\"pl-c1\">45</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L5450\" class=\"blob-num js-line-number\" data-line-number=\"5450\"></td>\n        <td id=\"LC5450\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5451\" class=\"blob-num js-line-number\" data-line-number=\"5451\"></td>\n        <td id=\"LC5451\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Shape <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../model/shape<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5452\" class=\"blob-num js-line-number\" data-line-number=\"5452\"></td>\n        <td id=\"LC5452\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5453\" class=\"blob-num js-line-number\" data-line-number=\"5453\"></td>\n        <td id=\"LC5453\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">DomXmlParser</span>() { }</td>\n      </tr>\n      <tr>\n        <td id=\"L5454\" class=\"blob-num js-line-number\" data-line-number=\"5454\"></td>\n        <td id=\"LC5454\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5455\" class=\"blob-num js-line-number\" data-line-number=\"5455\"></td>\n        <td id=\"LC5455\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">DomXmlParser</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">parse</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5456\" class=\"blob-num js-line-number\" data-line-number=\"5456\"></td>\n        <td id=\"LC5456\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">xml</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">+</span><span class=\"pl-pds\">/</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L5457\" class=\"blob-num js-line-number\" data-line-number=\"5457\"></td>\n        <td id=\"LC5457\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5458\" class=\"blob-num js-line-number\" data-line-number=\"5458\"></td>\n        <td id=\"LC5458\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> result, error;</td>\n      </tr>\n      <tr>\n        <td id=\"L5459\" class=\"blob-num js-line-number\" data-line-number=\"5459\"></td>\n        <td id=\"LC5459\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5460\" class=\"blob-num js-line-number\" data-line-number=\"5460\"></td>\n        <td id=\"LC5460\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">window</span>.<span class=\"pl-smi\">DOMParser</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5461\" class=\"blob-num js-line-number\" data-line-number=\"5461\"></td>\n        <td id=\"LC5461\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5462\" class=\"blob-num js-line-number\" data-line-number=\"5462\"></td>\n        <td id=\"LC5462\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> parser <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">DOMParser</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L5463\" class=\"blob-num js-line-number\" data-line-number=\"5463\"></td>\n        <td id=\"LC5463\" class=\"blob-code blob-code-inner js-file-line\">        result <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parser</span>.<span class=\"pl-en\">parseFromString</span>(xml, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>text/xml<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5464\" class=\"blob-num js-line-number\" data-line-number=\"5464\"></td>\n        <td id=\"LC5464\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">catch</span> (syntaxError) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5465\" class=\"blob-num js-line-number\" data-line-number=\"5465\"></td>\n        <td id=\"LC5465\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Parse error in document<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L5466\" class=\"blob-num js-line-number\" data-line-number=\"5466\"></td>\n        <td id=\"LC5466\" class=\"blob-code blob-code-inner js-file-line\">          {</td>\n      </tr>\n      <tr>\n        <td id=\"L5467\" class=\"blob-num js-line-number\" data-line-number=\"5467\"></td>\n        <td id=\"LC5467\" class=\"blob-code blob-code-inner js-file-line\">            originalError<span class=\"pl-k\">:</span> syntaxError,</td>\n      </tr>\n      <tr>\n        <td id=\"L5468\" class=\"blob-num js-line-number\" data-line-number=\"5468\"></td>\n        <td id=\"LC5468\" class=\"blob-code blob-code-inner js-file-line\">            code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>XMLParserError<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5469\" class=\"blob-num js-line-number\" data-line-number=\"5469\"></td>\n        <td id=\"LC5469\" class=\"blob-code blob-code-inner js-file-line\">            retryable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5470\" class=\"blob-num js-line-number\" data-line-number=\"5470\"></td>\n        <td id=\"LC5470\" class=\"blob-code blob-code-inner js-file-line\">          });</td>\n      </tr>\n      <tr>\n        <td id=\"L5471\" class=\"blob-num js-line-number\" data-line-number=\"5471\"></td>\n        <td id=\"LC5471\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5472\" class=\"blob-num js-line-number\" data-line-number=\"5472\"></td>\n        <td id=\"LC5472\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5473\" class=\"blob-num js-line-number\" data-line-number=\"5473\"></td>\n        <td id=\"LC5473\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">documentElement</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5474\" class=\"blob-num js-line-number\" data-line-number=\"5474\"></td>\n        <td id=\"LC5474\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Cannot parse empty document.<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L5475\" class=\"blob-num js-line-number\" data-line-number=\"5475\"></td>\n        <td id=\"LC5475\" class=\"blob-code blob-code-inner js-file-line\">          {</td>\n      </tr>\n      <tr>\n        <td id=\"L5476\" class=\"blob-num js-line-number\" data-line-number=\"5476\"></td>\n        <td id=\"LC5476\" class=\"blob-code blob-code-inner js-file-line\">            code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>XMLParserError<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5477\" class=\"blob-num js-line-number\" data-line-number=\"5477\"></td>\n        <td id=\"LC5477\" class=\"blob-code blob-code-inner js-file-line\">            retryable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5478\" class=\"blob-num js-line-number\" data-line-number=\"5478\"></td>\n        <td id=\"LC5478\" class=\"blob-code blob-code-inner js-file-line\">          });</td>\n      </tr>\n      <tr>\n        <td id=\"L5479\" class=\"blob-num js-line-number\" data-line-number=\"5479\"></td>\n        <td id=\"LC5479\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5480\" class=\"blob-num js-line-number\" data-line-number=\"5480\"></td>\n        <td id=\"LC5480\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5481\" class=\"blob-num js-line-number\" data-line-number=\"5481\"></td>\n        <td id=\"LC5481\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> isError <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">getElementsByTagName</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>parsererror<span class=\"pl-pds\">&#39;</span></span>)[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L5482\" class=\"blob-num js-line-number\" data-line-number=\"5482\"></td>\n        <td id=\"LC5482\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (isError <span class=\"pl-k\">&amp;&amp;</span> (<span class=\"pl-smi\">isError</span>.<span class=\"pl-c1\">parentNode</span> <span class=\"pl-k\">===</span> result <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5483\" class=\"blob-num js-line-number\" data-line-number=\"5483\"></td>\n        <td id=\"LC5483\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">isError</span>.<span class=\"pl-c1\">parentNode</span>.<span class=\"pl-c1\">nodeName</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>body<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5484\" class=\"blob-num js-line-number\" data-line-number=\"5484\"></td>\n        <td id=\"LC5484\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">isError</span>.<span class=\"pl-c1\">parentNode</span>.<span class=\"pl-c1\">parentNode</span> <span class=\"pl-k\">===</span> result <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5485\" class=\"blob-num js-line-number\" data-line-number=\"5485\"></td>\n        <td id=\"LC5485\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">isError</span>.<span class=\"pl-c1\">parentNode</span>.<span class=\"pl-c1\">parentNode</span>.<span class=\"pl-c1\">nodeName</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>body<span class=\"pl-pds\">&#39;</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5486\" class=\"blob-num js-line-number\" data-line-number=\"5486\"></td>\n        <td id=\"LC5486\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> errorElement <span class=\"pl-k\">=</span> <span class=\"pl-smi\">isError</span>.<span class=\"pl-c1\">getElementsByTagName</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>div<span class=\"pl-pds\">&#39;</span></span>)[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">||</span> isError;</td>\n      </tr>\n      <tr>\n        <td id=\"L5487\" class=\"blob-num js-line-number\" data-line-number=\"5487\"></td>\n        <td id=\"LC5487\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-smi\">errorElement</span>.<span class=\"pl-smi\">textContent</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Parser error in document<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L5488\" class=\"blob-num js-line-number\" data-line-number=\"5488\"></td>\n        <td id=\"LC5488\" class=\"blob-code blob-code-inner js-file-line\">          {</td>\n      </tr>\n      <tr>\n        <td id=\"L5489\" class=\"blob-num js-line-number\" data-line-number=\"5489\"></td>\n        <td id=\"LC5489\" class=\"blob-code blob-code-inner js-file-line\">            code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>XMLParserError<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5490\" class=\"blob-num js-line-number\" data-line-number=\"5490\"></td>\n        <td id=\"LC5490\" class=\"blob-code blob-code-inner js-file-line\">            retryable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5491\" class=\"blob-num js-line-number\" data-line-number=\"5491\"></td>\n        <td id=\"LC5491\" class=\"blob-code blob-code-inner js-file-line\">          });</td>\n      </tr>\n      <tr>\n        <td id=\"L5492\" class=\"blob-num js-line-number\" data-line-number=\"5492\"></td>\n        <td id=\"LC5492\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5493\" class=\"blob-num js-line-number\" data-line-number=\"5493\"></td>\n        <td id=\"LC5493\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">window</span>.<span class=\"pl-smi\">ActiveXObject</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5494\" class=\"blob-num js-line-number\" data-line-number=\"5494\"></td>\n        <td id=\"LC5494\" class=\"blob-code blob-code-inner js-file-line\">      result <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">window.ActiveXObject</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Microsoft.XMLDOM<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5495\" class=\"blob-num js-line-number\" data-line-number=\"5495\"></td>\n        <td id=\"LC5495\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">async</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5496\" class=\"blob-num js-line-number\" data-line-number=\"5496\"></td>\n        <td id=\"LC5496\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5497\" class=\"blob-num js-line-number\" data-line-number=\"5497\"></td>\n        <td id=\"LC5497\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">result</span>.<span class=\"pl-en\">loadXML</span>(xml)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5498\" class=\"blob-num js-line-number\" data-line-number=\"5498\"></td>\n        <td id=\"LC5498\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Parse error in document<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L5499\" class=\"blob-num js-line-number\" data-line-number=\"5499\"></td>\n        <td id=\"LC5499\" class=\"blob-code blob-code-inner js-file-line\">          {</td>\n      </tr>\n      <tr>\n        <td id=\"L5500\" class=\"blob-num js-line-number\" data-line-number=\"5500\"></td>\n        <td id=\"LC5500\" class=\"blob-code blob-code-inner js-file-line\">            code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>XMLParserError<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L5501\" class=\"blob-num js-line-number\" data-line-number=\"5501\"></td>\n        <td id=\"LC5501\" class=\"blob-code blob-code-inner js-file-line\">            retryable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5502\" class=\"blob-num js-line-number\" data-line-number=\"5502\"></td>\n        <td id=\"LC5502\" class=\"blob-code blob-code-inner js-file-line\">          });</td>\n      </tr>\n      <tr>\n        <td id=\"L5503\" class=\"blob-num js-line-number\" data-line-number=\"5503\"></td>\n        <td id=\"LC5503\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5504\" class=\"blob-num js-line-number\" data-line-number=\"5504\"></td>\n        <td id=\"LC5504\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5505\" class=\"blob-num js-line-number\" data-line-number=\"5505\"></td>\n        <td id=\"LC5505\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Cannot load XML parser<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5506\" class=\"blob-num js-line-number\" data-line-number=\"5506\"></td>\n        <td id=\"LC5506\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5507\" class=\"blob-num js-line-number\" data-line-number=\"5507\"></td>\n        <td id=\"LC5507\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">catch</span> (e) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5508\" class=\"blob-num js-line-number\" data-line-number=\"5508\"></td>\n        <td id=\"LC5508\" class=\"blob-code blob-code-inner js-file-line\">    error <span class=\"pl-k\">=</span> e;</td>\n      </tr>\n      <tr>\n        <td id=\"L5509\" class=\"blob-num js-line-number\" data-line-number=\"5509\"></td>\n        <td id=\"LC5509\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5510\" class=\"blob-num js-line-number\" data-line-number=\"5510\"></td>\n        <td id=\"LC5510\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5511\" class=\"blob-num js-line-number\" data-line-number=\"5511\"></td>\n        <td id=\"LC5511\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (result <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">documentElement</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>error) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5512\" class=\"blob-num js-line-number\" data-line-number=\"5512\"></td>\n        <td id=\"LC5512\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> data <span class=\"pl-k\">=</span> <span class=\"pl-en\">parseXml</span>(<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">documentElement</span>, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5513\" class=\"blob-num js-line-number\" data-line-number=\"5513\"></td>\n        <td id=\"LC5513\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> metadata <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">getElementsByTagName</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ResponseMetadata<span class=\"pl-pds\">&#39;</span></span>)[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L5514\" class=\"blob-num js-line-number\" data-line-number=\"5514\"></td>\n        <td id=\"LC5514\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (metadata) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5515\" class=\"blob-num js-line-number\" data-line-number=\"5515\"></td>\n        <td id=\"LC5515\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">data</span>.<span class=\"pl-smi\">ResponseMetadata</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">parseXml</span>(metadata, {});</td>\n      </tr>\n      <tr>\n        <td id=\"L5516\" class=\"blob-num js-line-number\" data-line-number=\"5516\"></td>\n        <td id=\"LC5516\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5517\" class=\"blob-num js-line-number\" data-line-number=\"5517\"></td>\n        <td id=\"LC5517\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> data;</td>\n      </tr>\n      <tr>\n        <td id=\"L5518\" class=\"blob-num js-line-number\" data-line-number=\"5518\"></td>\n        <td id=\"LC5518\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (error) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5519\" class=\"blob-num js-line-number\" data-line-number=\"5519\"></td>\n        <td id=\"LC5519\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">error</span>(error <span class=\"pl-k\">||</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(), {code<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>XMLParserError<span class=\"pl-pds\">&#39;</span></span>, retryable<span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>});</td>\n      </tr>\n      <tr>\n        <td id=\"L5520\" class=\"blob-num js-line-number\" data-line-number=\"5520\"></td>\n        <td id=\"LC5520\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> { <span class=\"pl-c\">// empty xml document</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5521\" class=\"blob-num js-line-number\" data-line-number=\"5521\"></td>\n        <td id=\"LC5521\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L5522\" class=\"blob-num js-line-number\" data-line-number=\"5522\"></td>\n        <td id=\"LC5522\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5523\" class=\"blob-num js-line-number\" data-line-number=\"5523\"></td>\n        <td id=\"LC5523\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L5524\" class=\"blob-num js-line-number\" data-line-number=\"5524\"></td>\n        <td id=\"LC5524\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5525\" class=\"blob-num js-line-number\" data-line-number=\"5525\"></td>\n        <td id=\"LC5525\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">parseXml</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5526\" class=\"blob-num js-line-number\" data-line-number=\"5526\"></td>\n        <td id=\"LC5526\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>shape) shape <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L5527\" class=\"blob-num js-line-number\" data-line-number=\"5527\"></td>\n        <td id=\"LC5527\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5528\" class=\"blob-num js-line-number\" data-line-number=\"5528\"></td>\n        <td id=\"LC5528\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">parseStructure</span>(xml, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5529\" class=\"blob-num js-line-number\" data-line-number=\"5529\"></td>\n        <td id=\"LC5529\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">parseMap</span>(xml, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5530\" class=\"blob-num js-line-number\" data-line-number=\"5530\"></td>\n        <td id=\"LC5530\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">parseList</span>(xml, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5531\" class=\"blob-num js-line-number\" data-line-number=\"5531\"></td>\n        <td id=\"LC5531\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-c1\">undefined</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">case</span> null<span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">parseUnknown</span>(xml);</td>\n      </tr>\n      <tr>\n        <td id=\"L5532\" class=\"blob-num js-line-number\" data-line-number=\"5532\"></td>\n        <td id=\"LC5532\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">parseScalar</span>(xml, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5533\" class=\"blob-num js-line-number\" data-line-number=\"5533\"></td>\n        <td id=\"LC5533\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5534\" class=\"blob-num js-line-number\" data-line-number=\"5534\"></td>\n        <td id=\"LC5534\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5535\" class=\"blob-num js-line-number\" data-line-number=\"5535\"></td>\n        <td id=\"LC5535\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5536\" class=\"blob-num js-line-number\" data-line-number=\"5536\"></td>\n        <td id=\"LC5536\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">parseStructure</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5537\" class=\"blob-num js-line-number\" data-line-number=\"5537\"></td>\n        <td id=\"LC5537\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> data <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L5538\" class=\"blob-num js-line-number\" data-line-number=\"5538\"></td>\n        <td id=\"LC5538\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (xml <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) <span class=\"pl-k\">return</span> data;</td>\n      </tr>\n      <tr>\n        <td id=\"L5539\" class=\"blob-num js-line-number\" data-line-number=\"5539\"></td>\n        <td id=\"LC5539\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5540\" class=\"blob-num js-line-number\" data-line-number=\"5540\"></td>\n        <td id=\"LC5540\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">memberName</span>, <span class=\"pl-smi\">memberShape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5541\" class=\"blob-num js-line-number\" data-line-number=\"5541\"></td>\n        <td id=\"LC5541\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">memberShape</span>.<span class=\"pl-smi\">isXmlAttribute</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5542\" class=\"blob-num js-line-number\" data-line-number=\"5542\"></td>\n        <td id=\"LC5542\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">xml</span>.<span class=\"pl-c1\">attributes</span>.<span class=\"pl-en\">hasOwnProperty</span>(<span class=\"pl-smi\">memberShape</span>.<span class=\"pl-c1\">name</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5543\" class=\"blob-num js-line-number\" data-line-number=\"5543\"></td>\n        <td id=\"LC5543\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-c1\">attributes</span>[<span class=\"pl-smi\">memberShape</span>.<span class=\"pl-c1\">name</span>].<span class=\"pl-c1\">value</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5544\" class=\"blob-num js-line-number\" data-line-number=\"5544\"></td>\n        <td id=\"LC5544\" class=\"blob-code blob-code-inner js-file-line\">        data[memberName] <span class=\"pl-k\">=</span> <span class=\"pl-en\">parseXml</span>({textContent<span class=\"pl-k\">:</span> value}, memberShape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5545\" class=\"blob-num js-line-number\" data-line-number=\"5545\"></td>\n        <td id=\"LC5545\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5546\" class=\"blob-num js-line-number\" data-line-number=\"5546\"></td>\n        <td id=\"LC5546\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5547\" class=\"blob-num js-line-number\" data-line-number=\"5547\"></td>\n        <td id=\"LC5547\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> xmlChild <span class=\"pl-k\">=</span> <span class=\"pl-smi\">memberShape</span>.<span class=\"pl-smi\">flattened</span> <span class=\"pl-k\">?</span> xml <span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5548\" class=\"blob-num js-line-number\" data-line-number=\"5548\"></td>\n        <td id=\"LC5548\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">xml</span>.<span class=\"pl-c1\">getElementsByTagName</span>(<span class=\"pl-smi\">memberShape</span>.<span class=\"pl-c1\">name</span>)[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L5549\" class=\"blob-num js-line-number\" data-line-number=\"5549\"></td>\n        <td id=\"LC5549\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (xmlChild) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5550\" class=\"blob-num js-line-number\" data-line-number=\"5550\"></td>\n        <td id=\"LC5550\" class=\"blob-code blob-code-inner js-file-line\">        data[memberName] <span class=\"pl-k\">=</span> <span class=\"pl-en\">parseXml</span>(xmlChild, memberShape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5551\" class=\"blob-num js-line-number\" data-line-number=\"5551\"></td>\n        <td id=\"LC5551\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">memberShape</span>.<span class=\"pl-smi\">flattened</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">memberShape</span>.<span class=\"pl-c1\">type</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5552\" class=\"blob-num js-line-number\" data-line-number=\"5552\"></td>\n        <td id=\"LC5552\" class=\"blob-code blob-code-inner js-file-line\">        data[memberName] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">memberShape</span>.<span class=\"pl-c1\">defaultValue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5553\" class=\"blob-num js-line-number\" data-line-number=\"5553\"></td>\n        <td id=\"LC5553\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5554\" class=\"blob-num js-line-number\" data-line-number=\"5554\"></td>\n        <td id=\"LC5554\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5555\" class=\"blob-num js-line-number\" data-line-number=\"5555\"></td>\n        <td id=\"LC5555\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L5556\" class=\"blob-num js-line-number\" data-line-number=\"5556\"></td>\n        <td id=\"LC5556\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5557\" class=\"blob-num js-line-number\" data-line-number=\"5557\"></td>\n        <td id=\"LC5557\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> data;</td>\n      </tr>\n      <tr>\n        <td id=\"L5558\" class=\"blob-num js-line-number\" data-line-number=\"5558\"></td>\n        <td id=\"LC5558\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5559\" class=\"blob-num js-line-number\" data-line-number=\"5559\"></td>\n        <td id=\"LC5559\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5560\" class=\"blob-num js-line-number\" data-line-number=\"5560\"></td>\n        <td id=\"LC5560\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">parseMap</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5561\" class=\"blob-num js-line-number\" data-line-number=\"5561\"></td>\n        <td id=\"LC5561\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> data <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L5562\" class=\"blob-num js-line-number\" data-line-number=\"5562\"></td>\n        <td id=\"LC5562\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> xmlKey <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>key<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5563\" class=\"blob-num js-line-number\" data-line-number=\"5563\"></td>\n        <td id=\"LC5563\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> xmlValue <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">value</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5564\" class=\"blob-num js-line-number\" data-line-number=\"5564\"></td>\n        <td id=\"LC5564\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> tagName <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">flattened</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>entry<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5565\" class=\"blob-num js-line-number\" data-line-number=\"5565\"></td>\n        <td id=\"LC5565\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5566\" class=\"blob-num js-line-number\" data-line-number=\"5566\"></td>\n        <td id=\"LC5566\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> child <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-smi\">firstElementChild</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5567\" class=\"blob-num js-line-number\" data-line-number=\"5567\"></td>\n        <td id=\"LC5567\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (child) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5568\" class=\"blob-num js-line-number\" data-line-number=\"5568\"></td>\n        <td id=\"LC5568\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">nodeName</span> <span class=\"pl-k\">===</span> tagName) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5569\" class=\"blob-num js-line-number\" data-line-number=\"5569\"></td>\n        <td id=\"LC5569\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">getElementsByTagName</span>(xmlKey)[<span class=\"pl-c1\">0</span>].<span class=\"pl-smi\">textContent</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5570\" class=\"blob-num js-line-number\" data-line-number=\"5570\"></td>\n        <td id=\"LC5570\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">getElementsByTagName</span>(xmlValue)[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L5571\" class=\"blob-num js-line-number\" data-line-number=\"5571\"></td>\n        <td id=\"LC5571\" class=\"blob-code blob-code-inner js-file-line\">      data[key] <span class=\"pl-k\">=</span> <span class=\"pl-en\">parseXml</span>(value, <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">value</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5572\" class=\"blob-num js-line-number\" data-line-number=\"5572\"></td>\n        <td id=\"LC5572\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5573\" class=\"blob-num js-line-number\" data-line-number=\"5573\"></td>\n        <td id=\"LC5573\" class=\"blob-code blob-code-inner js-file-line\">    child <span class=\"pl-k\">=</span> <span class=\"pl-smi\">child</span>.<span class=\"pl-smi\">nextElementSibling</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5574\" class=\"blob-num js-line-number\" data-line-number=\"5574\"></td>\n        <td id=\"LC5574\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5575\" class=\"blob-num js-line-number\" data-line-number=\"5575\"></td>\n        <td id=\"LC5575\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> data;</td>\n      </tr>\n      <tr>\n        <td id=\"L5576\" class=\"blob-num js-line-number\" data-line-number=\"5576\"></td>\n        <td id=\"LC5576\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5577\" class=\"blob-num js-line-number\" data-line-number=\"5577\"></td>\n        <td id=\"LC5577\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5578\" class=\"blob-num js-line-number\" data-line-number=\"5578\"></td>\n        <td id=\"LC5578\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">parseList</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5579\" class=\"blob-num js-line-number\" data-line-number=\"5579\"></td>\n        <td id=\"LC5579\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> data <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L5580\" class=\"blob-num js-line-number\" data-line-number=\"5580\"></td>\n        <td id=\"LC5580\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> tagName <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">flattened</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">:</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>member<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5581\" class=\"blob-num js-line-number\" data-line-number=\"5581\"></td>\n        <td id=\"LC5581\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5582\" class=\"blob-num js-line-number\" data-line-number=\"5582\"></td>\n        <td id=\"LC5582\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> child <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-smi\">firstElementChild</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5583\" class=\"blob-num js-line-number\" data-line-number=\"5583\"></td>\n        <td id=\"LC5583\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (child) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5584\" class=\"blob-num js-line-number\" data-line-number=\"5584\"></td>\n        <td id=\"LC5584\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">nodeName</span> <span class=\"pl-k\">===</span> tagName) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5585\" class=\"blob-num js-line-number\" data-line-number=\"5585\"></td>\n        <td id=\"LC5585\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">data</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-en\">parseXml</span>(child, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L5586\" class=\"blob-num js-line-number\" data-line-number=\"5586\"></td>\n        <td id=\"LC5586\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5587\" class=\"blob-num js-line-number\" data-line-number=\"5587\"></td>\n        <td id=\"LC5587\" class=\"blob-code blob-code-inner js-file-line\">    child <span class=\"pl-k\">=</span> <span class=\"pl-smi\">child</span>.<span class=\"pl-smi\">nextElementSibling</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5588\" class=\"blob-num js-line-number\" data-line-number=\"5588\"></td>\n        <td id=\"LC5588\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5589\" class=\"blob-num js-line-number\" data-line-number=\"5589\"></td>\n        <td id=\"LC5589\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> data;</td>\n      </tr>\n      <tr>\n        <td id=\"L5590\" class=\"blob-num js-line-number\" data-line-number=\"5590\"></td>\n        <td id=\"LC5590\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5591\" class=\"blob-num js-line-number\" data-line-number=\"5591\"></td>\n        <td id=\"LC5591\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5592\" class=\"blob-num js-line-number\" data-line-number=\"5592\"></td>\n        <td id=\"LC5592\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">parseScalar</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5593\" class=\"blob-num js-line-number\" data-line-number=\"5593\"></td>\n        <td id=\"LC5593\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">xml</span>.<span class=\"pl-smi\">getAttribute</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5594\" class=\"blob-num js-line-number\" data-line-number=\"5594\"></td>\n        <td id=\"LC5594\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> encoding <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-c1\">getAttribute</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>encoding<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5595\" class=\"blob-num js-line-number\" data-line-number=\"5595\"></td>\n        <td id=\"LC5595\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (encoding <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5596\" class=\"blob-num js-line-number\" data-line-number=\"5596\"></td>\n        <td id=\"LC5596\" class=\"blob-code blob-code-inner js-file-line\">      shape <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Shape.create</span>({type<span class=\"pl-k\">:</span> encoding});</td>\n      </tr>\n      <tr>\n        <td id=\"L5597\" class=\"blob-num js-line-number\" data-line-number=\"5597\"></td>\n        <td id=\"LC5597\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5598\" class=\"blob-num js-line-number\" data-line-number=\"5598\"></td>\n        <td id=\"LC5598\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5599\" class=\"blob-num js-line-number\" data-line-number=\"5599\"></td>\n        <td id=\"LC5599\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5600\" class=\"blob-num js-line-number\" data-line-number=\"5600\"></td>\n        <td id=\"LC5600\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> text <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-smi\">textContent</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5601\" class=\"blob-num js-line-number\" data-line-number=\"5601\"></td>\n        <td id=\"LC5601\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (text <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) text <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5602\" class=\"blob-num js-line-number\" data-line-number=\"5602\"></td>\n        <td id=\"LC5602\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">toType</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5603\" class=\"blob-num js-line-number\" data-line-number=\"5603\"></td>\n        <td id=\"LC5603\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-en\">toType</span>(text);</td>\n      </tr>\n      <tr>\n        <td id=\"L5604\" class=\"blob-num js-line-number\" data-line-number=\"5604\"></td>\n        <td id=\"LC5604\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5605\" class=\"blob-num js-line-number\" data-line-number=\"5605\"></td>\n        <td id=\"LC5605\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> text;</td>\n      </tr>\n      <tr>\n        <td id=\"L5606\" class=\"blob-num js-line-number\" data-line-number=\"5606\"></td>\n        <td id=\"LC5606\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5607\" class=\"blob-num js-line-number\" data-line-number=\"5607\"></td>\n        <td id=\"LC5607\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5608\" class=\"blob-num js-line-number\" data-line-number=\"5608\"></td>\n        <td id=\"LC5608\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5609\" class=\"blob-num js-line-number\" data-line-number=\"5609\"></td>\n        <td id=\"LC5609\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">parseUnknown</span>(<span class=\"pl-smi\">xml</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5610\" class=\"blob-num js-line-number\" data-line-number=\"5610\"></td>\n        <td id=\"LC5610\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (xml <span class=\"pl-k\">===</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">||</span> xml <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5611\" class=\"blob-num js-line-number\" data-line-number=\"5611\"></td>\n        <td id=\"LC5611\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5612\" class=\"blob-num js-line-number\" data-line-number=\"5612\"></td>\n        <td id=\"LC5612\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">xml</span>.<span class=\"pl-smi\">firstElementChild</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5613\" class=\"blob-num js-line-number\" data-line-number=\"5613\"></td>\n        <td id=\"LC5613\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">xml</span>.<span class=\"pl-c1\">parentNode</span>.<span class=\"pl-c1\">parentNode</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) <span class=\"pl-k\">return</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L5614\" class=\"blob-num js-line-number\" data-line-number=\"5614\"></td>\n        <td id=\"LC5614\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">xml</span>.<span class=\"pl-c1\">childNodes</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5615\" class=\"blob-num js-line-number\" data-line-number=\"5615\"></td>\n        <td id=\"LC5615\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">else</span> <span class=\"pl-k\">return</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-smi\">textContent</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5616\" class=\"blob-num js-line-number\" data-line-number=\"5616\"></td>\n        <td id=\"LC5616\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5617\" class=\"blob-num js-line-number\" data-line-number=\"5617\"></td>\n        <td id=\"LC5617\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5618\" class=\"blob-num js-line-number\" data-line-number=\"5618\"></td>\n        <td id=\"LC5618\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> shape <span class=\"pl-k\">=</span> {type<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span>, members<span class=\"pl-k\">:</span> {}};</td>\n      </tr>\n      <tr>\n        <td id=\"L5619\" class=\"blob-num js-line-number\" data-line-number=\"5619\"></td>\n        <td id=\"LC5619\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> child <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-smi\">firstElementChild</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5620\" class=\"blob-num js-line-number\" data-line-number=\"5620\"></td>\n        <td id=\"LC5620\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (child) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5621\" class=\"blob-num js-line-number\" data-line-number=\"5621\"></td>\n        <td id=\"LC5621\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> tag <span class=\"pl-k\">=</span> <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">nodeName</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5622\" class=\"blob-num js-line-number\" data-line-number=\"5622\"></td>\n        <td id=\"LC5622\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>.<span class=\"pl-en\">hasOwnProperty</span>(tag)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5623\" class=\"blob-num js-line-number\" data-line-number=\"5623\"></td>\n        <td id=\"LC5623\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>[tag].<span class=\"pl-c1\">type</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5624\" class=\"blob-num js-line-number\" data-line-number=\"5624\"></td>\n        <td id=\"LC5624\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5625\" class=\"blob-num js-line-number\" data-line-number=\"5625\"></td>\n        <td id=\"LC5625\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>[tag] <span class=\"pl-k\">=</span> {name<span class=\"pl-k\">:</span> tag};</td>\n      </tr>\n      <tr>\n        <td id=\"L5626\" class=\"blob-num js-line-number\" data-line-number=\"5626\"></td>\n        <td id=\"LC5626\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5627\" class=\"blob-num js-line-number\" data-line-number=\"5627\"></td>\n        <td id=\"LC5627\" class=\"blob-code blob-code-inner js-file-line\">    child <span class=\"pl-k\">=</span> <span class=\"pl-smi\">child</span>.<span class=\"pl-smi\">nextElementSibling</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5628\" class=\"blob-num js-line-number\" data-line-number=\"5628\"></td>\n        <td id=\"LC5628\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5629\" class=\"blob-num js-line-number\" data-line-number=\"5629\"></td>\n        <td id=\"LC5629\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">parseStructure</span>(xml, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5630\" class=\"blob-num js-line-number\" data-line-number=\"5630\"></td>\n        <td id=\"LC5630\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5631\" class=\"blob-num js-line-number\" data-line-number=\"5631\"></td>\n        <td id=\"LC5631\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5632\" class=\"blob-num js-line-number\" data-line-number=\"5632\"></td>\n        <td id=\"LC5632\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> DomXmlParser;</td>\n      </tr>\n      <tr>\n        <td id=\"L5633\" class=\"blob-num js-line-number\" data-line-number=\"5633\"></td>\n        <td id=\"LC5633\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5634\" class=\"blob-num js-line-number\" data-line-number=\"5634\"></td>\n        <td id=\"LC5634\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../model/shape<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">20</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>}],<span class=\"pl-c1\">46</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L5635\" class=\"blob-num js-line-number\" data-line-number=\"5635\"></td>\n        <td id=\"LC5635\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> util <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../util<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5636\" class=\"blob-num js-line-number\" data-line-number=\"5636\"></td>\n        <td id=\"LC5636\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> builder <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>xmlbuilder<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5637\" class=\"blob-num js-line-number\" data-line-number=\"5637\"></td>\n        <td id=\"LC5637\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5638\" class=\"blob-num js-line-number\" data-line-number=\"5638\"></td>\n        <td id=\"LC5638\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">XmlBuilder</span>() { }</td>\n      </tr>\n      <tr>\n        <td id=\"L5639\" class=\"blob-num js-line-number\" data-line-number=\"5639\"></td>\n        <td id=\"LC5639\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5640\" class=\"blob-num js-line-number\" data-line-number=\"5640\"></td>\n        <td id=\"LC5640\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">XmlBuilder</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toXML</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">shape</span>, <span class=\"pl-smi\">rootElement</span>, <span class=\"pl-smi\">noEmpty</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5641\" class=\"blob-num js-line-number\" data-line-number=\"5641\"></td>\n        <td id=\"LC5641\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> xml <span class=\"pl-k\">=</span> <span class=\"pl-smi\">builder</span>.<span class=\"pl-en\">create</span>(rootElement);</td>\n      </tr>\n      <tr>\n        <td id=\"L5642\" class=\"blob-num js-line-number\" data-line-number=\"5642\"></td>\n        <td id=\"LC5642\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">applyNamespaces</span>(xml, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5643\" class=\"blob-num js-line-number\" data-line-number=\"5643\"></td>\n        <td id=\"LC5643\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">serialize</span>(xml, params, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5644\" class=\"blob-num js-line-number\" data-line-number=\"5644\"></td>\n        <td id=\"LC5644\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">||</span> noEmpty <span class=\"pl-k\">?</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-en\">root</span>().<span class=\"pl-c1\">toString</span>() <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5645\" class=\"blob-num js-line-number\" data-line-number=\"5645\"></td>\n        <td id=\"LC5645\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L5646\" class=\"blob-num js-line-number\" data-line-number=\"5646\"></td>\n        <td id=\"LC5646\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5647\" class=\"blob-num js-line-number\" data-line-number=\"5647\"></td>\n        <td id=\"LC5647\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">serialize</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5648\" class=\"blob-num js-line-number\" data-line-number=\"5648\"></td>\n        <td id=\"LC5648\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5649\" class=\"blob-num js-line-number\" data-line-number=\"5649\"></td>\n        <td id=\"LC5649\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>structure<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">serializeStructure</span>(xml, value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5650\" class=\"blob-num js-line-number\" data-line-number=\"5650\"></td>\n        <td id=\"LC5650\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>map<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">serializeMap</span>(xml, value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5651\" class=\"blob-num js-line-number\" data-line-number=\"5651\"></td>\n        <td id=\"LC5651\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">serializeList</span>(xml, value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5652\" class=\"blob-num js-line-number\" data-line-number=\"5652\"></td>\n        <td id=\"LC5652\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-en\">serializeScalar</span>(xml, value, shape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5653\" class=\"blob-num js-line-number\" data-line-number=\"5653\"></td>\n        <td id=\"LC5653\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5654\" class=\"blob-num js-line-number\" data-line-number=\"5654\"></td>\n        <td id=\"LC5654\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5655\" class=\"blob-num js-line-number\" data-line-number=\"5655\"></td>\n        <td id=\"LC5655\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5656\" class=\"blob-num js-line-number\" data-line-number=\"5656\"></td>\n        <td id=\"LC5656\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">serializeStructure</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">params</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5657\" class=\"blob-num js-line-number\" data-line-number=\"5657\"></td>\n        <td id=\"LC5657\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">memberNames</span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">memberName</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5658\" class=\"blob-num js-line-number\" data-line-number=\"5658\"></td>\n        <td id=\"LC5658\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> memberShape <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">members</span>[memberName];</td>\n      </tr>\n      <tr>\n        <td id=\"L5659\" class=\"blob-num js-line-number\" data-line-number=\"5659\"></td>\n        <td id=\"LC5659\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">memberShape</span>.<span class=\"pl-c1\">location</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>body<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5660\" class=\"blob-num js-line-number\" data-line-number=\"5660\"></td>\n        <td id=\"LC5660\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5661\" class=\"blob-num js-line-number\" data-line-number=\"5661\"></td>\n        <td id=\"LC5661\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> value <span class=\"pl-k\">=</span> params[memberName];</td>\n      </tr>\n      <tr>\n        <td id=\"L5662\" class=\"blob-num js-line-number\" data-line-number=\"5662\"></td>\n        <td id=\"LC5662\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">memberShape</span>.<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5663\" class=\"blob-num js-line-number\" data-line-number=\"5663\"></td>\n        <td id=\"LC5663\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5664\" class=\"blob-num js-line-number\" data-line-number=\"5664\"></td>\n        <td id=\"LC5664\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">memberShape</span>.<span class=\"pl-smi\">isXmlAttribute</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5665\" class=\"blob-num js-line-number\" data-line-number=\"5665\"></td>\n        <td id=\"LC5665\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">xml</span>.<span class=\"pl-en\">att</span>(name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L5666\" class=\"blob-num js-line-number\" data-line-number=\"5666\"></td>\n        <td id=\"LC5666\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">memberShape</span>.<span class=\"pl-smi\">flattened</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5667\" class=\"blob-num js-line-number\" data-line-number=\"5667\"></td>\n        <td id=\"LC5667\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">serialize</span>(xml, value, memberShape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5668\" class=\"blob-num js-line-number\" data-line-number=\"5668\"></td>\n        <td id=\"LC5668\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5669\" class=\"blob-num js-line-number\" data-line-number=\"5669\"></td>\n        <td id=\"LC5669\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> element <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-en\">ele</span>(name);</td>\n      </tr>\n      <tr>\n        <td id=\"L5670\" class=\"blob-num js-line-number\" data-line-number=\"5670\"></td>\n        <td id=\"LC5670\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">applyNamespaces</span>(element, memberShape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5671\" class=\"blob-num js-line-number\" data-line-number=\"5671\"></td>\n        <td id=\"LC5671\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">serialize</span>(element, value, memberShape);</td>\n      </tr>\n      <tr>\n        <td id=\"L5672\" class=\"blob-num js-line-number\" data-line-number=\"5672\"></td>\n        <td id=\"LC5672\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L5673\" class=\"blob-num js-line-number\" data-line-number=\"5673\"></td>\n        <td id=\"LC5673\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5674\" class=\"blob-num js-line-number\" data-line-number=\"5674\"></td>\n        <td id=\"LC5674\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L5675\" class=\"blob-num js-line-number\" data-line-number=\"5675\"></td>\n        <td id=\"LC5675\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5676\" class=\"blob-num js-line-number\" data-line-number=\"5676\"></td>\n        <td id=\"LC5676\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5677\" class=\"blob-num js-line-number\" data-line-number=\"5677\"></td>\n        <td id=\"LC5677\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">serializeMap</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">map</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5678\" class=\"blob-num js-line-number\" data-line-number=\"5678\"></td>\n        <td id=\"LC5678\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> xmlKey <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>key<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5679\" class=\"blob-num js-line-number\" data-line-number=\"5679\"></td>\n        <td id=\"LC5679\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> xmlValue <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">value</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5680\" class=\"blob-num js-line-number\" data-line-number=\"5680\"></td>\n        <td id=\"LC5680\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5681\" class=\"blob-num js-line-number\" data-line-number=\"5681\"></td>\n        <td id=\"LC5681\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">each</span>(map, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5682\" class=\"blob-num js-line-number\" data-line-number=\"5682\"></td>\n        <td id=\"LC5682\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> entry <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-en\">ele</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">flattened</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>entry<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5683\" class=\"blob-num js-line-number\" data-line-number=\"5683\"></td>\n        <td id=\"LC5683\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">serialize</span>(<span class=\"pl-smi\">entry</span>.<span class=\"pl-en\">ele</span>(xmlKey), key, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">key</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5684\" class=\"blob-num js-line-number\" data-line-number=\"5684\"></td>\n        <td id=\"LC5684\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">serialize</span>(<span class=\"pl-smi\">entry</span>.<span class=\"pl-en\">ele</span>(xmlValue), value, <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">value</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5685\" class=\"blob-num js-line-number\" data-line-number=\"5685\"></td>\n        <td id=\"LC5685\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L5686\" class=\"blob-num js-line-number\" data-line-number=\"5686\"></td>\n        <td id=\"LC5686\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5687\" class=\"blob-num js-line-number\" data-line-number=\"5687\"></td>\n        <td id=\"LC5687\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5688\" class=\"blob-num js-line-number\" data-line-number=\"5688\"></td>\n        <td id=\"LC5688\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">serializeList</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">list</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5689\" class=\"blob-num js-line-number\" data-line-number=\"5689\"></td>\n        <td id=\"LC5689\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">flattened</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5690\" class=\"blob-num js-line-number\" data-line-number=\"5690\"></td>\n        <td id=\"LC5690\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(list, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5691\" class=\"blob-num js-line-number\" data-line-number=\"5691\"></td>\n        <td id=\"LC5691\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5692\" class=\"blob-num js-line-number\" data-line-number=\"5692\"></td>\n        <td id=\"LC5692\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> element <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-en\">ele</span>(name);</td>\n      </tr>\n      <tr>\n        <td id=\"L5693\" class=\"blob-num js-line-number\" data-line-number=\"5693\"></td>\n        <td id=\"LC5693\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">serialize</span>(element, value, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5694\" class=\"blob-num js-line-number\" data-line-number=\"5694\"></td>\n        <td id=\"LC5694\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L5695\" class=\"blob-num js-line-number\" data-line-number=\"5695\"></td>\n        <td id=\"LC5695\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5696\" class=\"blob-num js-line-number\" data-line-number=\"5696\"></td>\n        <td id=\"LC5696\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">util</span>.<span class=\"pl-en\">arrayEach</span>(list, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5697\" class=\"blob-num js-line-number\" data-line-number=\"5697\"></td>\n        <td id=\"LC5697\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>member<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5698\" class=\"blob-num js-line-number\" data-line-number=\"5698\"></td>\n        <td id=\"LC5698\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> element <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xml</span>.<span class=\"pl-en\">ele</span>(name);</td>\n      </tr>\n      <tr>\n        <td id=\"L5699\" class=\"blob-num js-line-number\" data-line-number=\"5699\"></td>\n        <td id=\"LC5699\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">serialize</span>(element, value, <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">member</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L5700\" class=\"blob-num js-line-number\" data-line-number=\"5700\"></td>\n        <td id=\"LC5700\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L5701\" class=\"blob-num js-line-number\" data-line-number=\"5701\"></td>\n        <td id=\"LC5701\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5702\" class=\"blob-num js-line-number\" data-line-number=\"5702\"></td>\n        <td id=\"LC5702\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5703\" class=\"blob-num js-line-number\" data-line-number=\"5703\"></td>\n        <td id=\"LC5703\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5704\" class=\"blob-num js-line-number\" data-line-number=\"5704\"></td>\n        <td id=\"LC5704\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">serializeScalar</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5705\" class=\"blob-num js-line-number\" data-line-number=\"5705\"></td>\n        <td id=\"LC5705\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">xml</span>.<span class=\"pl-en\">txt</span>(<span class=\"pl-smi\">shape</span>.<span class=\"pl-en\">toWireFormat</span>(value));</td>\n      </tr>\n      <tr>\n        <td id=\"L5706\" class=\"blob-num js-line-number\" data-line-number=\"5706\"></td>\n        <td id=\"LC5706\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5707\" class=\"blob-num js-line-number\" data-line-number=\"5707\"></td>\n        <td id=\"LC5707\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5708\" class=\"blob-num js-line-number\" data-line-number=\"5708\"></td>\n        <td id=\"LC5708\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">applyNamespaces</span>(<span class=\"pl-smi\">xml</span>, <span class=\"pl-smi\">shape</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5709\" class=\"blob-num js-line-number\" data-line-number=\"5709\"></td>\n        <td id=\"LC5709\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> uri, prefix <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>xmlns<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5710\" class=\"blob-num js-line-number\" data-line-number=\"5710\"></td>\n        <td id=\"LC5710\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlNamespaceUri</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5711\" class=\"blob-num js-line-number\" data-line-number=\"5711\"></td>\n        <td id=\"LC5711\" class=\"blob-code blob-code-inner js-file-line\">    uri <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlNamespaceUri</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5712\" class=\"blob-num js-line-number\" data-line-number=\"5712\"></td>\n        <td id=\"LC5712\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlNamespacePrefix</span>) prefix <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">xmlNamespacePrefix</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5713\" class=\"blob-num js-line-number\" data-line-number=\"5713\"></td>\n        <td id=\"LC5713\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">xml</span>.<span class=\"pl-smi\">isRoot</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">xmlNamespaceUri</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5714\" class=\"blob-num js-line-number\" data-line-number=\"5714\"></td>\n        <td id=\"LC5714\" class=\"blob-code blob-code-inner js-file-line\">    uri <span class=\"pl-k\">=</span> <span class=\"pl-smi\">shape</span>.<span class=\"pl-smi\">api</span>.<span class=\"pl-smi\">xmlNamespaceUri</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L5715\" class=\"blob-num js-line-number\" data-line-number=\"5715\"></td>\n        <td id=\"LC5715\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5716\" class=\"blob-num js-line-number\" data-line-number=\"5716\"></td>\n        <td id=\"LC5716\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5717\" class=\"blob-num js-line-number\" data-line-number=\"5717\"></td>\n        <td id=\"LC5717\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (uri) <span class=\"pl-smi\">xml</span>.<span class=\"pl-en\">att</span>(prefix, uri);</td>\n      </tr>\n      <tr>\n        <td id=\"L5718\" class=\"blob-num js-line-number\" data-line-number=\"5718\"></td>\n        <td id=\"LC5718\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5719\" class=\"blob-num js-line-number\" data-line-number=\"5719\"></td>\n        <td id=\"LC5719\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5720\" class=\"blob-num js-line-number\" data-line-number=\"5720\"></td>\n        <td id=\"LC5720\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XmlBuilder;</td>\n      </tr>\n      <tr>\n        <td id=\"L5721\" class=\"blob-num js-line-number\" data-line-number=\"5721\"></td>\n        <td id=\"LC5721\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5722\" class=\"blob-num js-line-number\" data-line-number=\"5722\"></td>\n        <td id=\"LC5722\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../util<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">44</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>xmlbuilder<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">82</span>}],<span class=\"pl-c1\">47</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L5723\" class=\"blob-num js-line-number\" data-line-number=\"5723\"></td>\n        <td id=\"LC5723\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5724\" class=\"blob-num js-line-number\" data-line-number=\"5724\"></td>\n        <td id=\"LC5724\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5725\" class=\"blob-num js-line-number\" data-line-number=\"5725\"></td>\n        <td id=\"LC5725\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> base64 <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64-js<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5726\" class=\"blob-num js-line-number\" data-line-number=\"5726\"></td>\n        <td id=\"LC5726\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> ieee754 <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ieee754<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5727\" class=\"blob-num js-line-number\" data-line-number=\"5727\"></td>\n        <td id=\"LC5727\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5728\" class=\"blob-num js-line-number\" data-line-number=\"5728\"></td>\n        <td id=\"LC5728\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">Buffer</span> <span class=\"pl-k\">=</span> Buffer</td>\n      </tr>\n      <tr>\n        <td id=\"L5729\" class=\"blob-num js-line-number\" data-line-number=\"5729\"></td>\n        <td id=\"LC5729\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">SlowBuffer</span> <span class=\"pl-k\">=</span> Buffer</td>\n      </tr>\n      <tr>\n        <td id=\"L5730\" class=\"blob-num js-line-number\" data-line-number=\"5730\"></td>\n        <td id=\"LC5730\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-c1\">INSPECT_MAX_BYTES</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">50</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5731\" class=\"blob-num js-line-number\" data-line-number=\"5731\"></td>\n        <td id=\"LC5731\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">poolSize</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">8192</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5732\" class=\"blob-num js-line-number\" data-line-number=\"5732\"></td>\n        <td id=\"LC5732\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5733\" class=\"blob-num js-line-number\" data-line-number=\"5733\"></td>\n        <td id=\"LC5733\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5734\" class=\"blob-num js-line-number\" data-line-number=\"5734\"></td>\n        <td id=\"LC5734\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_useTypedArrays</span> <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span> () {</td>\n      </tr>\n      <tr>\n        <td id=\"L5735\" class=\"blob-num js-line-number\" data-line-number=\"5735\"></td>\n        <td id=\"LC5735\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5736\" class=\"blob-num js-line-number\" data-line-number=\"5736\"></td>\n        <td id=\"LC5736\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> buf <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">ArrayBuffer</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5737\" class=\"blob-num js-line-number\" data-line-number=\"5737\"></td>\n        <td id=\"LC5737\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> arr <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Uint8Array</span>(buf)</td>\n      </tr>\n      <tr>\n        <td id=\"L5738\" class=\"blob-num js-line-number\" data-line-number=\"5738\"></td>\n        <td id=\"LC5738\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">arr</span>.<span class=\"pl-en\">foo</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> () { <span class=\"pl-k\">return</span> <span class=\"pl-c1\">42</span> }</td>\n      </tr>\n      <tr>\n        <td id=\"L5739\" class=\"blob-num js-line-number\" data-line-number=\"5739\"></td>\n        <td id=\"LC5739\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">42</span> <span class=\"pl-k\">===</span> <span class=\"pl-smi\">arr</span>.<span class=\"pl-en\">foo</span>() <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5740\" class=\"blob-num js-line-number\" data-line-number=\"5740\"></td>\n        <td id=\"LC5740\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">subarray</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-c\">// Chrome 9-10 lack `subarray`</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5741\" class=\"blob-num js-line-number\" data-line-number=\"5741\"></td>\n        <td id=\"LC5741\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">catch</span> (e) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5742\" class=\"blob-num js-line-number\" data-line-number=\"5742\"></td>\n        <td id=\"LC5742\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5743\" class=\"blob-num js-line-number\" data-line-number=\"5743\"></td>\n        <td id=\"LC5743\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5744\" class=\"blob-num js-line-number\" data-line-number=\"5744\"></td>\n        <td id=\"LC5744\" class=\"blob-code blob-code-inner js-file-line\">})()</td>\n      </tr>\n      <tr>\n        <td id=\"L5745\" class=\"blob-num js-line-number\" data-line-number=\"5745\"></td>\n        <td id=\"LC5745\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5746\" class=\"blob-num js-line-number\" data-line-number=\"5746\"></td>\n        <td id=\"LC5746\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5747\" class=\"blob-num js-line-number\" data-line-number=\"5747\"></td>\n        <td id=\"LC5747\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">Buffer</span> (<span class=\"pl-smi\">subject</span>, <span class=\"pl-smi\">encoding</span>, <span class=\"pl-smi\">noZero</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5748\" class=\"blob-num js-line-number\" data-line-number=\"5748\"></td>\n        <td id=\"LC5748\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>(<span class=\"pl-v\">this</span> <span class=\"pl-k\">instanceof</span> Buffer))</td>\n      </tr>\n      <tr>\n        <td id=\"L5749\" class=\"blob-num js-line-number\" data-line-number=\"5749\"></td>\n        <td id=\"LC5749\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(subject, encoding, noZero)</td>\n      </tr>\n      <tr>\n        <td id=\"L5750\" class=\"blob-num js-line-number\" data-line-number=\"5750\"></td>\n        <td id=\"LC5750\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5751\" class=\"blob-num js-line-number\" data-line-number=\"5751\"></td>\n        <td id=\"LC5751\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> type <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> subject</td>\n      </tr>\n      <tr>\n        <td id=\"L5752\" class=\"blob-num js-line-number\" data-line-number=\"5752\"></td>\n        <td id=\"LC5752\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5753\" class=\"blob-num js-line-number\" data-line-number=\"5753\"></td>\n        <td id=\"LC5753\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (encoding <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> type <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5754\" class=\"blob-num js-line-number\" data-line-number=\"5754\"></td>\n        <td id=\"LC5754\" class=\"blob-code blob-code-inner js-file-line\">    subject <span class=\"pl-k\">=</span> <span class=\"pl-en\">stringtrim</span>(subject)</td>\n      </tr>\n      <tr>\n        <td id=\"L5755\" class=\"blob-num js-line-number\" data-line-number=\"5755\"></td>\n        <td id=\"LC5755\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">while</span> (<span class=\"pl-smi\">subject</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">%</span> <span class=\"pl-c1\">4</span> <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5756\" class=\"blob-num js-line-number\" data-line-number=\"5756\"></td>\n        <td id=\"LC5756\" class=\"blob-code blob-code-inner js-file-line\">      subject <span class=\"pl-k\">=</span> subject <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L5757\" class=\"blob-num js-line-number\" data-line-number=\"5757\"></td>\n        <td id=\"LC5757\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5758\" class=\"blob-num js-line-number\" data-line-number=\"5758\"></td>\n        <td id=\"LC5758\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5759\" class=\"blob-num js-line-number\" data-line-number=\"5759\"></td>\n        <td id=\"LC5759\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5760\" class=\"blob-num js-line-number\" data-line-number=\"5760\"></td>\n        <td id=\"LC5760\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> length</td>\n      </tr>\n      <tr>\n        <td id=\"L5761\" class=\"blob-num js-line-number\" data-line-number=\"5761\"></td>\n        <td id=\"LC5761\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (type <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5762\" class=\"blob-num js-line-number\" data-line-number=\"5762\"></td>\n        <td id=\"LC5762\" class=\"blob-code blob-code-inner js-file-line\">    length <span class=\"pl-k\">=</span> <span class=\"pl-en\">coerce</span>(subject)</td>\n      </tr>\n      <tr>\n        <td id=\"L5763\" class=\"blob-num js-line-number\" data-line-number=\"5763\"></td>\n        <td id=\"LC5763\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (type <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5764\" class=\"blob-num js-line-number\" data-line-number=\"5764\"></td>\n        <td id=\"LC5764\" class=\"blob-code blob-code-inner js-file-line\">    length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">byteLength</span>(subject, encoding)</td>\n      </tr>\n      <tr>\n        <td id=\"L5765\" class=\"blob-num js-line-number\" data-line-number=\"5765\"></td>\n        <td id=\"LC5765\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (type <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5766\" class=\"blob-num js-line-number\" data-line-number=\"5766\"></td>\n        <td id=\"LC5766\" class=\"blob-code blob-code-inner js-file-line\">    length <span class=\"pl-k\">=</span> <span class=\"pl-en\">coerce</span>(<span class=\"pl-smi\">subject</span>.<span class=\"pl-c1\">length</span>) <span class=\"pl-c\">// assume that object is array-like</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5767\" class=\"blob-num js-line-number\" data-line-number=\"5767\"></td>\n        <td id=\"LC5767\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5768\" class=\"blob-num js-line-number\" data-line-number=\"5768\"></td>\n        <td id=\"LC5768\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>First argument needs to be a number, array or string.<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5769\" class=\"blob-num js-line-number\" data-line-number=\"5769\"></td>\n        <td id=\"LC5769\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5770\" class=\"blob-num js-line-number\" data-line-number=\"5770\"></td>\n        <td id=\"LC5770\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> buf</td>\n      </tr>\n      <tr>\n        <td id=\"L5771\" class=\"blob-num js-line-number\" data-line-number=\"5771\"></td>\n        <td id=\"LC5771\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_useTypedArrays</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5772\" class=\"blob-num js-line-number\" data-line-number=\"5772\"></td>\n        <td id=\"LC5772\" class=\"blob-code blob-code-inner js-file-line\">    buf <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">_augment</span>(<span class=\"pl-k\">new</span> <span class=\"pl-en\">Uint8Array</span>(length))</td>\n      </tr>\n      <tr>\n        <td id=\"L5773\" class=\"blob-num js-line-number\" data-line-number=\"5773\"></td>\n        <td id=\"LC5773\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5774\" class=\"blob-num js-line-number\" data-line-number=\"5774\"></td>\n        <td id=\"LC5774\" class=\"blob-code blob-code-inner js-file-line\">    buf <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5775\" class=\"blob-num js-line-number\" data-line-number=\"5775\"></td>\n        <td id=\"LC5775\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">=</span> length</td>\n      </tr>\n      <tr>\n        <td id=\"L5776\" class=\"blob-num js-line-number\" data-line-number=\"5776\"></td>\n        <td id=\"LC5776\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">buf</span>.<span class=\"pl-smi\">_isBuffer</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5777\" class=\"blob-num js-line-number\" data-line-number=\"5777\"></td>\n        <td id=\"LC5777\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5778\" class=\"blob-num js-line-number\" data-line-number=\"5778\"></td>\n        <td id=\"LC5778\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5779\" class=\"blob-num js-line-number\" data-line-number=\"5779\"></td>\n        <td id=\"LC5779\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> i</td>\n      </tr>\n      <tr>\n        <td id=\"L5780\" class=\"blob-num js-line-number\" data-line-number=\"5780\"></td>\n        <td id=\"LC5780\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_useTypedArrays</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">subject</span>.<span class=\"pl-smi\">byteLength</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5781\" class=\"blob-num js-line-number\" data-line-number=\"5781\"></td>\n        <td id=\"LC5781\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">buf</span>.<span class=\"pl-en\">_set</span>(subject)</td>\n      </tr>\n      <tr>\n        <td id=\"L5782\" class=\"blob-num js-line-number\" data-line-number=\"5782\"></td>\n        <td id=\"LC5782\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isArrayish</span>(subject)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5783\" class=\"blob-num js-line-number\" data-line-number=\"5783\"></td>\n        <td id=\"LC5783\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> length; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5784\" class=\"blob-num js-line-number\" data-line-number=\"5784\"></td>\n        <td id=\"LC5784\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">isBuffer</span>(subject))</td>\n      </tr>\n      <tr>\n        <td id=\"L5785\" class=\"blob-num js-line-number\" data-line-number=\"5785\"></td>\n        <td id=\"LC5785\" class=\"blob-code blob-code-inner js-file-line\">        buf[i] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">subject</span>.<span class=\"pl-en\">readUInt8</span>(i)</td>\n      </tr>\n      <tr>\n        <td id=\"L5786\" class=\"blob-num js-line-number\" data-line-number=\"5786\"></td>\n        <td id=\"LC5786\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">else</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5787\" class=\"blob-num js-line-number\" data-line-number=\"5787\"></td>\n        <td id=\"LC5787\" class=\"blob-code blob-code-inner js-file-line\">        buf[i] <span class=\"pl-k\">=</span> subject[i]</td>\n      </tr>\n      <tr>\n        <td id=\"L5788\" class=\"blob-num js-line-number\" data-line-number=\"5788\"></td>\n        <td id=\"LC5788\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5789\" class=\"blob-num js-line-number\" data-line-number=\"5789\"></td>\n        <td id=\"LC5789\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (type <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5790\" class=\"blob-num js-line-number\" data-line-number=\"5790\"></td>\n        <td id=\"LC5790\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">write</span>(subject, <span class=\"pl-c1\">0</span>, encoding)</td>\n      </tr>\n      <tr>\n        <td id=\"L5791\" class=\"blob-num js-line-number\" data-line-number=\"5791\"></td>\n        <td id=\"LC5791\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (type <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_useTypedArrays</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>noZero) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5792\" class=\"blob-num js-line-number\" data-line-number=\"5792\"></td>\n        <td id=\"LC5792\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> length; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5793\" class=\"blob-num js-line-number\" data-line-number=\"5793\"></td>\n        <td id=\"LC5793\" class=\"blob-code blob-code-inner js-file-line\">      buf[i] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5794\" class=\"blob-num js-line-number\" data-line-number=\"5794\"></td>\n        <td id=\"LC5794\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5795\" class=\"blob-num js-line-number\" data-line-number=\"5795\"></td>\n        <td id=\"LC5795\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5796\" class=\"blob-num js-line-number\" data-line-number=\"5796\"></td>\n        <td id=\"LC5796\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5797\" class=\"blob-num js-line-number\" data-line-number=\"5797\"></td>\n        <td id=\"LC5797\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> buf</td>\n      </tr>\n      <tr>\n        <td id=\"L5798\" class=\"blob-num js-line-number\" data-line-number=\"5798\"></td>\n        <td id=\"LC5798\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5799\" class=\"blob-num js-line-number\" data-line-number=\"5799\"></td>\n        <td id=\"LC5799\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5800\" class=\"blob-num js-line-number\" data-line-number=\"5800\"></td>\n        <td id=\"LC5800\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5801\" class=\"blob-num js-line-number\" data-line-number=\"5801\"></td>\n        <td id=\"LC5801\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">isEncoding</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">encoding</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5802\" class=\"blob-num js-line-number\" data-line-number=\"5802\"></td>\n        <td id=\"LC5802\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (<span class=\"pl-c1\">String</span>(encoding).<span class=\"pl-c1\">toLowerCase</span>()) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5803\" class=\"blob-num js-line-number\" data-line-number=\"5803\"></td>\n        <td id=\"LC5803\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>hex<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5804\" class=\"blob-num js-line-number\" data-line-number=\"5804\"></td>\n        <td id=\"LC5804\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf8<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5805\" class=\"blob-num js-line-number\" data-line-number=\"5805\"></td>\n        <td id=\"LC5805\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf-8<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5806\" class=\"blob-num js-line-number\" data-line-number=\"5806\"></td>\n        <td id=\"LC5806\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ascii<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5807\" class=\"blob-num js-line-number\" data-line-number=\"5807\"></td>\n        <td id=\"LC5807\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>binary<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5808\" class=\"blob-num js-line-number\" data-line-number=\"5808\"></td>\n        <td id=\"LC5808\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5809\" class=\"blob-num js-line-number\" data-line-number=\"5809\"></td>\n        <td id=\"LC5809\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>raw<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5810\" class=\"blob-num js-line-number\" data-line-number=\"5810\"></td>\n        <td id=\"LC5810\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ucs2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5811\" class=\"blob-num js-line-number\" data-line-number=\"5811\"></td>\n        <td id=\"LC5811\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ucs-2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5812\" class=\"blob-num js-line-number\" data-line-number=\"5812\"></td>\n        <td id=\"LC5812\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf16le<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5813\" class=\"blob-num js-line-number\" data-line-number=\"5813\"></td>\n        <td id=\"LC5813\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf-16le<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5814\" class=\"blob-num js-line-number\" data-line-number=\"5814\"></td>\n        <td id=\"LC5814\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5815\" class=\"blob-num js-line-number\" data-line-number=\"5815\"></td>\n        <td id=\"LC5815\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5816\" class=\"blob-num js-line-number\" data-line-number=\"5816\"></td>\n        <td id=\"LC5816\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5817\" class=\"blob-num js-line-number\" data-line-number=\"5817\"></td>\n        <td id=\"LC5817\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5818\" class=\"blob-num js-line-number\" data-line-number=\"5818\"></td>\n        <td id=\"LC5818\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5819\" class=\"blob-num js-line-number\" data-line-number=\"5819\"></td>\n        <td id=\"LC5819\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5820\" class=\"blob-num js-line-number\" data-line-number=\"5820\"></td>\n        <td id=\"LC5820\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">isBuffer</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">b</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5821\" class=\"blob-num js-line-number\" data-line-number=\"5821\"></td>\n        <td id=\"LC5821\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">!!</span>(b <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">&amp;&amp;</span> b <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">b</span>.<span class=\"pl-smi\">_isBuffer</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5822\" class=\"blob-num js-line-number\" data-line-number=\"5822\"></td>\n        <td id=\"LC5822\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5823\" class=\"blob-num js-line-number\" data-line-number=\"5823\"></td>\n        <td id=\"LC5823\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5824\" class=\"blob-num js-line-number\" data-line-number=\"5824\"></td>\n        <td id=\"LC5824\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">byteLength</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">str</span>, <span class=\"pl-smi\">encoding</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5825\" class=\"blob-num js-line-number\" data-line-number=\"5825\"></td>\n        <td id=\"LC5825\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> ret</td>\n      </tr>\n      <tr>\n        <td id=\"L5826\" class=\"blob-num js-line-number\" data-line-number=\"5826\"></td>\n        <td id=\"LC5826\" class=\"blob-code blob-code-inner js-file-line\">  str <span class=\"pl-k\">=</span> str <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L5827\" class=\"blob-num js-line-number\" data-line-number=\"5827\"></td>\n        <td id=\"LC5827\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (encoding <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf8<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5828\" class=\"blob-num js-line-number\" data-line-number=\"5828\"></td>\n        <td id=\"LC5828\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>hex<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5829\" class=\"blob-num js-line-number\" data-line-number=\"5829\"></td>\n        <td id=\"LC5829\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">/</span> <span class=\"pl-c1\">2</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5830\" class=\"blob-num js-line-number\" data-line-number=\"5830\"></td>\n        <td id=\"LC5830\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5831\" class=\"blob-num js-line-number\" data-line-number=\"5831\"></td>\n        <td id=\"LC5831\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf8<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5832\" class=\"blob-num js-line-number\" data-line-number=\"5832\"></td>\n        <td id=\"LC5832\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf-8<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5833\" class=\"blob-num js-line-number\" data-line-number=\"5833\"></td>\n        <td id=\"LC5833\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">utf8ToBytes</span>(str).<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5834\" class=\"blob-num js-line-number\" data-line-number=\"5834\"></td>\n        <td id=\"LC5834\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5835\" class=\"blob-num js-line-number\" data-line-number=\"5835\"></td>\n        <td id=\"LC5835\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ascii<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5836\" class=\"blob-num js-line-number\" data-line-number=\"5836\"></td>\n        <td id=\"LC5836\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>binary<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5837\" class=\"blob-num js-line-number\" data-line-number=\"5837\"></td>\n        <td id=\"LC5837\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>raw<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5838\" class=\"blob-num js-line-number\" data-line-number=\"5838\"></td>\n        <td id=\"LC5838\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5839\" class=\"blob-num js-line-number\" data-line-number=\"5839\"></td>\n        <td id=\"LC5839\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5840\" class=\"blob-num js-line-number\" data-line-number=\"5840\"></td>\n        <td id=\"LC5840\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5841\" class=\"blob-num js-line-number\" data-line-number=\"5841\"></td>\n        <td id=\"LC5841\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">base64ToBytes</span>(str).<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5842\" class=\"blob-num js-line-number\" data-line-number=\"5842\"></td>\n        <td id=\"LC5842\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5843\" class=\"blob-num js-line-number\" data-line-number=\"5843\"></td>\n        <td id=\"LC5843\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ucs2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5844\" class=\"blob-num js-line-number\" data-line-number=\"5844\"></td>\n        <td id=\"LC5844\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ucs-2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5845\" class=\"blob-num js-line-number\" data-line-number=\"5845\"></td>\n        <td id=\"LC5845\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf16le<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5846\" class=\"blob-num js-line-number\" data-line-number=\"5846\"></td>\n        <td id=\"LC5846\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf-16le<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5847\" class=\"blob-num js-line-number\" data-line-number=\"5847\"></td>\n        <td id=\"LC5847\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">*</span> <span class=\"pl-c1\">2</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5848\" class=\"blob-num js-line-number\" data-line-number=\"5848\"></td>\n        <td id=\"LC5848\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5849\" class=\"blob-num js-line-number\" data-line-number=\"5849\"></td>\n        <td id=\"LC5849\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5850\" class=\"blob-num js-line-number\" data-line-number=\"5850\"></td>\n        <td id=\"LC5850\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Unknown encoding<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5851\" class=\"blob-num js-line-number\" data-line-number=\"5851\"></td>\n        <td id=\"LC5851\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5852\" class=\"blob-num js-line-number\" data-line-number=\"5852\"></td>\n        <td id=\"LC5852\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> ret</td>\n      </tr>\n      <tr>\n        <td id=\"L5853\" class=\"blob-num js-line-number\" data-line-number=\"5853\"></td>\n        <td id=\"LC5853\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5854\" class=\"blob-num js-line-number\" data-line-number=\"5854\"></td>\n        <td id=\"LC5854\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5855\" class=\"blob-num js-line-number\" data-line-number=\"5855\"></td>\n        <td id=\"LC5855\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">concat</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">list</span>, <span class=\"pl-smi\">totalLength</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5856\" class=\"blob-num js-line-number\" data-line-number=\"5856\"></td>\n        <td id=\"LC5856\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(<span class=\"pl-en\">isArray</span>(list), <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Usage: Buffer.concat(list, [totalLength])<span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5857\" class=\"blob-num js-line-number\" data-line-number=\"5857\"></td>\n        <td id=\"LC5857\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>list should be an Array.<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5858\" class=\"blob-num js-line-number\" data-line-number=\"5858\"></td>\n        <td id=\"LC5858\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5859\" class=\"blob-num js-line-number\" data-line-number=\"5859\"></td>\n        <td id=\"LC5859\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">list</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5860\" class=\"blob-num js-line-number\" data-line-number=\"5860\"></td>\n        <td id=\"LC5860\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5861\" class=\"blob-num js-line-number\" data-line-number=\"5861\"></td>\n        <td id=\"LC5861\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">list</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5862\" class=\"blob-num js-line-number\" data-line-number=\"5862\"></td>\n        <td id=\"LC5862\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> list[<span class=\"pl-c1\">0</span>]</td>\n      </tr>\n      <tr>\n        <td id=\"L5863\" class=\"blob-num js-line-number\" data-line-number=\"5863\"></td>\n        <td id=\"LC5863\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5864\" class=\"blob-num js-line-number\" data-line-number=\"5864\"></td>\n        <td id=\"LC5864\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5865\" class=\"blob-num js-line-number\" data-line-number=\"5865\"></td>\n        <td id=\"LC5865\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> i</td>\n      </tr>\n      <tr>\n        <td id=\"L5866\" class=\"blob-num js-line-number\" data-line-number=\"5866\"></td>\n        <td id=\"LC5866\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> totalLength <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5867\" class=\"blob-num js-line-number\" data-line-number=\"5867\"></td>\n        <td id=\"LC5867\" class=\"blob-code blob-code-inner js-file-line\">    totalLength <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5868\" class=\"blob-num js-line-number\" data-line-number=\"5868\"></td>\n        <td id=\"LC5868\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">list</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5869\" class=\"blob-num js-line-number\" data-line-number=\"5869\"></td>\n        <td id=\"LC5869\" class=\"blob-code blob-code-inner js-file-line\">      totalLength <span class=\"pl-k\">+=</span> list[i].<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5870\" class=\"blob-num js-line-number\" data-line-number=\"5870\"></td>\n        <td id=\"LC5870\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5871\" class=\"blob-num js-line-number\" data-line-number=\"5871\"></td>\n        <td id=\"LC5871\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5872\" class=\"blob-num js-line-number\" data-line-number=\"5872\"></td>\n        <td id=\"LC5872\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5873\" class=\"blob-num js-line-number\" data-line-number=\"5873\"></td>\n        <td id=\"LC5873\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> buf <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(totalLength)</td>\n      </tr>\n      <tr>\n        <td id=\"L5874\" class=\"blob-num js-line-number\" data-line-number=\"5874\"></td>\n        <td id=\"LC5874\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> pos <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5875\" class=\"blob-num js-line-number\" data-line-number=\"5875\"></td>\n        <td id=\"LC5875\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">list</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5876\" class=\"blob-num js-line-number\" data-line-number=\"5876\"></td>\n        <td id=\"LC5876\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> item <span class=\"pl-k\">=</span> list[i]</td>\n      </tr>\n      <tr>\n        <td id=\"L5877\" class=\"blob-num js-line-number\" data-line-number=\"5877\"></td>\n        <td id=\"LC5877\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">item</span>.<span class=\"pl-en\">copy</span>(buf, pos)</td>\n      </tr>\n      <tr>\n        <td id=\"L5878\" class=\"blob-num js-line-number\" data-line-number=\"5878\"></td>\n        <td id=\"LC5878\" class=\"blob-code blob-code-inner js-file-line\">    pos <span class=\"pl-k\">+=</span> <span class=\"pl-smi\">item</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5879\" class=\"blob-num js-line-number\" data-line-number=\"5879\"></td>\n        <td id=\"LC5879\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5880\" class=\"blob-num js-line-number\" data-line-number=\"5880\"></td>\n        <td id=\"LC5880\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> buf</td>\n      </tr>\n      <tr>\n        <td id=\"L5881\" class=\"blob-num js-line-number\" data-line-number=\"5881\"></td>\n        <td id=\"LC5881\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5882\" class=\"blob-num js-line-number\" data-line-number=\"5882\"></td>\n        <td id=\"LC5882\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5883\" class=\"blob-num js-line-number\" data-line-number=\"5883\"></td>\n        <td id=\"LC5883\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5884\" class=\"blob-num js-line-number\" data-line-number=\"5884\"></td>\n        <td id=\"LC5884\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_hexWrite</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">string</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5885\" class=\"blob-num js-line-number\" data-line-number=\"5885\"></td>\n        <td id=\"LC5885\" class=\"blob-code blob-code-inner js-file-line\">  offset <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Number</span>(offset) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5886\" class=\"blob-num js-line-number\" data-line-number=\"5886\"></td>\n        <td id=\"LC5886\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> remaining <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> offset</td>\n      </tr>\n      <tr>\n        <td id=\"L5887\" class=\"blob-num js-line-number\" data-line-number=\"5887\"></td>\n        <td id=\"LC5887\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5888\" class=\"blob-num js-line-number\" data-line-number=\"5888\"></td>\n        <td id=\"LC5888\" class=\"blob-code blob-code-inner js-file-line\">    length <span class=\"pl-k\">=</span> remaining</td>\n      </tr>\n      <tr>\n        <td id=\"L5889\" class=\"blob-num js-line-number\" data-line-number=\"5889\"></td>\n        <td id=\"LC5889\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5890\" class=\"blob-num js-line-number\" data-line-number=\"5890\"></td>\n        <td id=\"LC5890\" class=\"blob-code blob-code-inner js-file-line\">    length <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Number</span>(length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5891\" class=\"blob-num js-line-number\" data-line-number=\"5891\"></td>\n        <td id=\"LC5891\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (length <span class=\"pl-k\">&gt;</span> remaining) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5892\" class=\"blob-num js-line-number\" data-line-number=\"5892\"></td>\n        <td id=\"LC5892\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">=</span> remaining</td>\n      </tr>\n      <tr>\n        <td id=\"L5893\" class=\"blob-num js-line-number\" data-line-number=\"5893\"></td>\n        <td id=\"LC5893\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5894\" class=\"blob-num js-line-number\" data-line-number=\"5894\"></td>\n        <td id=\"LC5894\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5895\" class=\"blob-num js-line-number\" data-line-number=\"5895\"></td>\n        <td id=\"LC5895\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5896\" class=\"blob-num js-line-number\" data-line-number=\"5896\"></td>\n        <td id=\"LC5896\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> strLen <span class=\"pl-k\">=</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5897\" class=\"blob-num js-line-number\" data-line-number=\"5897\"></td>\n        <td id=\"LC5897\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(strLen <span class=\"pl-k\">%</span> <span class=\"pl-c1\">2</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Invalid hex string<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5898\" class=\"blob-num js-line-number\" data-line-number=\"5898\"></td>\n        <td id=\"LC5898\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5899\" class=\"blob-num js-line-number\" data-line-number=\"5899\"></td>\n        <td id=\"LC5899\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (length <span class=\"pl-k\">&gt;</span> strLen <span class=\"pl-k\">/</span> <span class=\"pl-c1\">2</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5900\" class=\"blob-num js-line-number\" data-line-number=\"5900\"></td>\n        <td id=\"LC5900\" class=\"blob-code blob-code-inner js-file-line\">    length <span class=\"pl-k\">=</span> strLen <span class=\"pl-k\">/</span> <span class=\"pl-c1\">2</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5901\" class=\"blob-num js-line-number\" data-line-number=\"5901\"></td>\n        <td id=\"LC5901\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5902\" class=\"blob-num js-line-number\" data-line-number=\"5902\"></td>\n        <td id=\"LC5902\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> length; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5903\" class=\"blob-num js-line-number\" data-line-number=\"5903\"></td>\n        <td id=\"LC5903\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> byte <span class=\"pl-k\">=</span> <span class=\"pl-c1\">parseInt</span>(<span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">substr</span>(i <span class=\"pl-k\">*</span> <span class=\"pl-c1\">2</span>, <span class=\"pl-c1\">2</span>), <span class=\"pl-c1\">16</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5904\" class=\"blob-num js-line-number\" data-line-number=\"5904\"></td>\n        <td id=\"LC5904\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">!</span><span class=\"pl-c1\">isNaN</span>(byte), <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Invalid hex string<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5905\" class=\"blob-num js-line-number\" data-line-number=\"5905\"></td>\n        <td id=\"LC5905\" class=\"blob-code blob-code-inner js-file-line\">    buf[offset <span class=\"pl-k\">+</span> i] <span class=\"pl-k\">=</span> byte</td>\n      </tr>\n      <tr>\n        <td id=\"L5906\" class=\"blob-num js-line-number\" data-line-number=\"5906\"></td>\n        <td id=\"LC5906\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5907\" class=\"blob-num js-line-number\" data-line-number=\"5907\"></td>\n        <td id=\"LC5907\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_charsWritten</span> <span class=\"pl-k\">=</span> i <span class=\"pl-k\">*</span> <span class=\"pl-c1\">2</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5908\" class=\"blob-num js-line-number\" data-line-number=\"5908\"></td>\n        <td id=\"LC5908\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> i</td>\n      </tr>\n      <tr>\n        <td id=\"L5909\" class=\"blob-num js-line-number\" data-line-number=\"5909\"></td>\n        <td id=\"LC5909\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5910\" class=\"blob-num js-line-number\" data-line-number=\"5910\"></td>\n        <td id=\"LC5910\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5911\" class=\"blob-num js-line-number\" data-line-number=\"5911\"></td>\n        <td id=\"LC5911\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_utf8Write</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">string</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5912\" class=\"blob-num js-line-number\" data-line-number=\"5912\"></td>\n        <td id=\"LC5912\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> charsWritten <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_charsWritten</span> <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5913\" class=\"blob-num js-line-number\" data-line-number=\"5913\"></td>\n        <td id=\"LC5913\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">blitBuffer</span>(<span class=\"pl-en\">utf8ToBytes</span>(string), buf, offset, length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5914\" class=\"blob-num js-line-number\" data-line-number=\"5914\"></td>\n        <td id=\"LC5914\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> charsWritten</td>\n      </tr>\n      <tr>\n        <td id=\"L5915\" class=\"blob-num js-line-number\" data-line-number=\"5915\"></td>\n        <td id=\"LC5915\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5916\" class=\"blob-num js-line-number\" data-line-number=\"5916\"></td>\n        <td id=\"LC5916\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5917\" class=\"blob-num js-line-number\" data-line-number=\"5917\"></td>\n        <td id=\"LC5917\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_asciiWrite</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">string</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5918\" class=\"blob-num js-line-number\" data-line-number=\"5918\"></td>\n        <td id=\"LC5918\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> charsWritten <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_charsWritten</span> <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5919\" class=\"blob-num js-line-number\" data-line-number=\"5919\"></td>\n        <td id=\"LC5919\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">blitBuffer</span>(<span class=\"pl-en\">asciiToBytes</span>(string), buf, offset, length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5920\" class=\"blob-num js-line-number\" data-line-number=\"5920\"></td>\n        <td id=\"LC5920\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> charsWritten</td>\n      </tr>\n      <tr>\n        <td id=\"L5921\" class=\"blob-num js-line-number\" data-line-number=\"5921\"></td>\n        <td id=\"LC5921\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5922\" class=\"blob-num js-line-number\" data-line-number=\"5922\"></td>\n        <td id=\"LC5922\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5923\" class=\"blob-num js-line-number\" data-line-number=\"5923\"></td>\n        <td id=\"LC5923\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_binaryWrite</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">string</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5924\" class=\"blob-num js-line-number\" data-line-number=\"5924\"></td>\n        <td id=\"LC5924\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_asciiWrite</span>(buf, string, offset, length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5925\" class=\"blob-num js-line-number\" data-line-number=\"5925\"></td>\n        <td id=\"LC5925\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5926\" class=\"blob-num js-line-number\" data-line-number=\"5926\"></td>\n        <td id=\"LC5926\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5927\" class=\"blob-num js-line-number\" data-line-number=\"5927\"></td>\n        <td id=\"LC5927\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_base64Write</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">string</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5928\" class=\"blob-num js-line-number\" data-line-number=\"5928\"></td>\n        <td id=\"LC5928\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> charsWritten <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_charsWritten</span> <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5929\" class=\"blob-num js-line-number\" data-line-number=\"5929\"></td>\n        <td id=\"LC5929\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">blitBuffer</span>(<span class=\"pl-en\">base64ToBytes</span>(string), buf, offset, length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5930\" class=\"blob-num js-line-number\" data-line-number=\"5930\"></td>\n        <td id=\"LC5930\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> charsWritten</td>\n      </tr>\n      <tr>\n        <td id=\"L5931\" class=\"blob-num js-line-number\" data-line-number=\"5931\"></td>\n        <td id=\"LC5931\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5932\" class=\"blob-num js-line-number\" data-line-number=\"5932\"></td>\n        <td id=\"LC5932\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5933\" class=\"blob-num js-line-number\" data-line-number=\"5933\"></td>\n        <td id=\"LC5933\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_utf16leWrite</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">string</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5934\" class=\"blob-num js-line-number\" data-line-number=\"5934\"></td>\n        <td id=\"LC5934\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> charsWritten <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_charsWritten</span> <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5935\" class=\"blob-num js-line-number\" data-line-number=\"5935\"></td>\n        <td id=\"LC5935\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">blitBuffer</span>(<span class=\"pl-en\">utf16leToBytes</span>(string), buf, offset, length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5936\" class=\"blob-num js-line-number\" data-line-number=\"5936\"></td>\n        <td id=\"LC5936\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> charsWritten</td>\n      </tr>\n      <tr>\n        <td id=\"L5937\" class=\"blob-num js-line-number\" data-line-number=\"5937\"></td>\n        <td id=\"LC5937\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5938\" class=\"blob-num js-line-number\" data-line-number=\"5938\"></td>\n        <td id=\"LC5938\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5939\" class=\"blob-num js-line-number\" data-line-number=\"5939\"></td>\n        <td id=\"LC5939\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">write</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">string</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">length</span>, <span class=\"pl-smi\">encoding</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5940\" class=\"blob-num js-line-number\" data-line-number=\"5940\"></td>\n        <td id=\"LC5940\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">isFinite</span>(offset)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5941\" class=\"blob-num js-line-number\" data-line-number=\"5941\"></td>\n        <td id=\"LC5941\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-c1\">isFinite</span>(length)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5942\" class=\"blob-num js-line-number\" data-line-number=\"5942\"></td>\n        <td id=\"LC5942\" class=\"blob-code blob-code-inner js-file-line\">      encoding <span class=\"pl-k\">=</span> length</td>\n      </tr>\n      <tr>\n        <td id=\"L5943\" class=\"blob-num js-line-number\" data-line-number=\"5943\"></td>\n        <td id=\"LC5943\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5944\" class=\"blob-num js-line-number\" data-line-number=\"5944\"></td>\n        <td id=\"LC5944\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5945\" class=\"blob-num js-line-number\" data-line-number=\"5945\"></td>\n        <td id=\"LC5945\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {  <span class=\"pl-c\">// legacy</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5946\" class=\"blob-num js-line-number\" data-line-number=\"5946\"></td>\n        <td id=\"LC5946\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> swap <span class=\"pl-k\">=</span> encoding</td>\n      </tr>\n      <tr>\n        <td id=\"L5947\" class=\"blob-num js-line-number\" data-line-number=\"5947\"></td>\n        <td id=\"LC5947\" class=\"blob-code blob-code-inner js-file-line\">    encoding <span class=\"pl-k\">=</span> offset</td>\n      </tr>\n      <tr>\n        <td id=\"L5948\" class=\"blob-num js-line-number\" data-line-number=\"5948\"></td>\n        <td id=\"LC5948\" class=\"blob-code blob-code-inner js-file-line\">    offset <span class=\"pl-k\">=</span> length</td>\n      </tr>\n      <tr>\n        <td id=\"L5949\" class=\"blob-num js-line-number\" data-line-number=\"5949\"></td>\n        <td id=\"LC5949\" class=\"blob-code blob-code-inner js-file-line\">    length <span class=\"pl-k\">=</span> swap</td>\n      </tr>\n      <tr>\n        <td id=\"L5950\" class=\"blob-num js-line-number\" data-line-number=\"5950\"></td>\n        <td id=\"LC5950\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5951\" class=\"blob-num js-line-number\" data-line-number=\"5951\"></td>\n        <td id=\"LC5951\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5952\" class=\"blob-num js-line-number\" data-line-number=\"5952\"></td>\n        <td id=\"LC5952\" class=\"blob-code blob-code-inner js-file-line\">  offset <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Number</span>(offset) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5953\" class=\"blob-num js-line-number\" data-line-number=\"5953\"></td>\n        <td id=\"LC5953\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> remaining <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> offset</td>\n      </tr>\n      <tr>\n        <td id=\"L5954\" class=\"blob-num js-line-number\" data-line-number=\"5954\"></td>\n        <td id=\"LC5954\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5955\" class=\"blob-num js-line-number\" data-line-number=\"5955\"></td>\n        <td id=\"LC5955\" class=\"blob-code blob-code-inner js-file-line\">    length <span class=\"pl-k\">=</span> remaining</td>\n      </tr>\n      <tr>\n        <td id=\"L5956\" class=\"blob-num js-line-number\" data-line-number=\"5956\"></td>\n        <td id=\"LC5956\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L5957\" class=\"blob-num js-line-number\" data-line-number=\"5957\"></td>\n        <td id=\"LC5957\" class=\"blob-code blob-code-inner js-file-line\">    length <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Number</span>(length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5958\" class=\"blob-num js-line-number\" data-line-number=\"5958\"></td>\n        <td id=\"LC5958\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (length <span class=\"pl-k\">&gt;</span> remaining) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5959\" class=\"blob-num js-line-number\" data-line-number=\"5959\"></td>\n        <td id=\"LC5959\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">=</span> remaining</td>\n      </tr>\n      <tr>\n        <td id=\"L5960\" class=\"blob-num js-line-number\" data-line-number=\"5960\"></td>\n        <td id=\"LC5960\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L5961\" class=\"blob-num js-line-number\" data-line-number=\"5961\"></td>\n        <td id=\"LC5961\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5962\" class=\"blob-num js-line-number\" data-line-number=\"5962\"></td>\n        <td id=\"LC5962\" class=\"blob-code blob-code-inner js-file-line\">  encoding <span class=\"pl-k\">=</span> <span class=\"pl-c1\">String</span>(encoding <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf8<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">toLowerCase</span>()</td>\n      </tr>\n      <tr>\n        <td id=\"L5963\" class=\"blob-num js-line-number\" data-line-number=\"5963\"></td>\n        <td id=\"LC5963\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5964\" class=\"blob-num js-line-number\" data-line-number=\"5964\"></td>\n        <td id=\"LC5964\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> ret</td>\n      </tr>\n      <tr>\n        <td id=\"L5965\" class=\"blob-num js-line-number\" data-line-number=\"5965\"></td>\n        <td id=\"LC5965\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (encoding) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5966\" class=\"blob-num js-line-number\" data-line-number=\"5966\"></td>\n        <td id=\"LC5966\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>hex<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5967\" class=\"blob-num js-line-number\" data-line-number=\"5967\"></td>\n        <td id=\"LC5967\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_hexWrite</span>(<span class=\"pl-v\">this</span>, string, offset, length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5968\" class=\"blob-num js-line-number\" data-line-number=\"5968\"></td>\n        <td id=\"LC5968\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5969\" class=\"blob-num js-line-number\" data-line-number=\"5969\"></td>\n        <td id=\"LC5969\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf8<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5970\" class=\"blob-num js-line-number\" data-line-number=\"5970\"></td>\n        <td id=\"LC5970\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf-8<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5971\" class=\"blob-num js-line-number\" data-line-number=\"5971\"></td>\n        <td id=\"LC5971\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_utf8Write</span>(<span class=\"pl-v\">this</span>, string, offset, length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5972\" class=\"blob-num js-line-number\" data-line-number=\"5972\"></td>\n        <td id=\"LC5972\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5973\" class=\"blob-num js-line-number\" data-line-number=\"5973\"></td>\n        <td id=\"LC5973\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ascii<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5974\" class=\"blob-num js-line-number\" data-line-number=\"5974\"></td>\n        <td id=\"LC5974\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_asciiWrite</span>(<span class=\"pl-v\">this</span>, string, offset, length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5975\" class=\"blob-num js-line-number\" data-line-number=\"5975\"></td>\n        <td id=\"LC5975\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5976\" class=\"blob-num js-line-number\" data-line-number=\"5976\"></td>\n        <td id=\"LC5976\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>binary<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5977\" class=\"blob-num js-line-number\" data-line-number=\"5977\"></td>\n        <td id=\"LC5977\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_binaryWrite</span>(<span class=\"pl-v\">this</span>, string, offset, length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5978\" class=\"blob-num js-line-number\" data-line-number=\"5978\"></td>\n        <td id=\"LC5978\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5979\" class=\"blob-num js-line-number\" data-line-number=\"5979\"></td>\n        <td id=\"LC5979\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5980\" class=\"blob-num js-line-number\" data-line-number=\"5980\"></td>\n        <td id=\"LC5980\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_base64Write</span>(<span class=\"pl-v\">this</span>, string, offset, length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5981\" class=\"blob-num js-line-number\" data-line-number=\"5981\"></td>\n        <td id=\"LC5981\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5982\" class=\"blob-num js-line-number\" data-line-number=\"5982\"></td>\n        <td id=\"LC5982\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ucs2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5983\" class=\"blob-num js-line-number\" data-line-number=\"5983\"></td>\n        <td id=\"LC5983\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ucs-2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5984\" class=\"blob-num js-line-number\" data-line-number=\"5984\"></td>\n        <td id=\"LC5984\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf16le<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5985\" class=\"blob-num js-line-number\" data-line-number=\"5985\"></td>\n        <td id=\"LC5985\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf-16le<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5986\" class=\"blob-num js-line-number\" data-line-number=\"5986\"></td>\n        <td id=\"LC5986\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_utf16leWrite</span>(<span class=\"pl-v\">this</span>, string, offset, length)</td>\n      </tr>\n      <tr>\n        <td id=\"L5987\" class=\"blob-num js-line-number\" data-line-number=\"5987\"></td>\n        <td id=\"LC5987\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5988\" class=\"blob-num js-line-number\" data-line-number=\"5988\"></td>\n        <td id=\"LC5988\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5989\" class=\"blob-num js-line-number\" data-line-number=\"5989\"></td>\n        <td id=\"LC5989\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Unknown encoding<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L5990\" class=\"blob-num js-line-number\" data-line-number=\"5990\"></td>\n        <td id=\"LC5990\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L5991\" class=\"blob-num js-line-number\" data-line-number=\"5991\"></td>\n        <td id=\"LC5991\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> ret</td>\n      </tr>\n      <tr>\n        <td id=\"L5992\" class=\"blob-num js-line-number\" data-line-number=\"5992\"></td>\n        <td id=\"LC5992\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L5993\" class=\"blob-num js-line-number\" data-line-number=\"5993\"></td>\n        <td id=\"LC5993\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5994\" class=\"blob-num js-line-number\" data-line-number=\"5994\"></td>\n        <td id=\"LC5994\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">encoding</span>, <span class=\"pl-smi\">start</span>, <span class=\"pl-smi\">end</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L5995\" class=\"blob-num js-line-number\" data-line-number=\"5995\"></td>\n        <td id=\"LC5995\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> self <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5996\" class=\"blob-num js-line-number\" data-line-number=\"5996\"></td>\n        <td id=\"LC5996\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L5997\" class=\"blob-num js-line-number\" data-line-number=\"5997\"></td>\n        <td id=\"LC5997\" class=\"blob-code blob-code-inner js-file-line\">  encoding <span class=\"pl-k\">=</span> <span class=\"pl-c1\">String</span>(encoding <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf8<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">toLowerCase</span>()</td>\n      </tr>\n      <tr>\n        <td id=\"L5998\" class=\"blob-num js-line-number\" data-line-number=\"5998\"></td>\n        <td id=\"LC5998\" class=\"blob-code blob-code-inner js-file-line\">  start <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Number</span>(start) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L5999\" class=\"blob-num js-line-number\" data-line-number=\"5999\"></td>\n        <td id=\"LC5999\" class=\"blob-code blob-code-inner js-file-line\">  end <span class=\"pl-k\">=</span> (end <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6000\" class=\"blob-num js-line-number\" data-line-number=\"6000\"></td>\n        <td id=\"LC6000\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">?</span> <span class=\"pl-c1\">Number</span>(end)</td>\n      </tr>\n      <tr>\n        <td id=\"L6001\" class=\"blob-num js-line-number\" data-line-number=\"6001\"></td>\n        <td id=\"LC6001\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">:</span> end <span class=\"pl-k\">=</span> <span class=\"pl-smi\">self</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6002\" class=\"blob-num js-line-number\" data-line-number=\"6002\"></td>\n        <td id=\"LC6002\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6003\" class=\"blob-num js-line-number\" data-line-number=\"6003\"></td>\n        <td id=\"LC6003\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (end <span class=\"pl-k\">===</span> start)</td>\n      </tr>\n      <tr>\n        <td id=\"L6004\" class=\"blob-num js-line-number\" data-line-number=\"6004\"></td>\n        <td id=\"LC6004\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6005\" class=\"blob-num js-line-number\" data-line-number=\"6005\"></td>\n        <td id=\"LC6005\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6006\" class=\"blob-num js-line-number\" data-line-number=\"6006\"></td>\n        <td id=\"LC6006\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> ret</td>\n      </tr>\n      <tr>\n        <td id=\"L6007\" class=\"blob-num js-line-number\" data-line-number=\"6007\"></td>\n        <td id=\"LC6007\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (encoding) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6008\" class=\"blob-num js-line-number\" data-line-number=\"6008\"></td>\n        <td id=\"LC6008\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>hex<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6009\" class=\"blob-num js-line-number\" data-line-number=\"6009\"></td>\n        <td id=\"LC6009\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_hexSlice</span>(self, start, end)</td>\n      </tr>\n      <tr>\n        <td id=\"L6010\" class=\"blob-num js-line-number\" data-line-number=\"6010\"></td>\n        <td id=\"LC6010\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6011\" class=\"blob-num js-line-number\" data-line-number=\"6011\"></td>\n        <td id=\"LC6011\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf8<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6012\" class=\"blob-num js-line-number\" data-line-number=\"6012\"></td>\n        <td id=\"LC6012\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf-8<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6013\" class=\"blob-num js-line-number\" data-line-number=\"6013\"></td>\n        <td id=\"LC6013\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_utf8Slice</span>(self, start, end)</td>\n      </tr>\n      <tr>\n        <td id=\"L6014\" class=\"blob-num js-line-number\" data-line-number=\"6014\"></td>\n        <td id=\"LC6014\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6015\" class=\"blob-num js-line-number\" data-line-number=\"6015\"></td>\n        <td id=\"LC6015\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ascii<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6016\" class=\"blob-num js-line-number\" data-line-number=\"6016\"></td>\n        <td id=\"LC6016\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_asciiSlice</span>(self, start, end)</td>\n      </tr>\n      <tr>\n        <td id=\"L6017\" class=\"blob-num js-line-number\" data-line-number=\"6017\"></td>\n        <td id=\"LC6017\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6018\" class=\"blob-num js-line-number\" data-line-number=\"6018\"></td>\n        <td id=\"LC6018\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>binary<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6019\" class=\"blob-num js-line-number\" data-line-number=\"6019\"></td>\n        <td id=\"LC6019\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_binarySlice</span>(self, start, end)</td>\n      </tr>\n      <tr>\n        <td id=\"L6020\" class=\"blob-num js-line-number\" data-line-number=\"6020\"></td>\n        <td id=\"LC6020\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6021\" class=\"blob-num js-line-number\" data-line-number=\"6021\"></td>\n        <td id=\"LC6021\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>base64<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6022\" class=\"blob-num js-line-number\" data-line-number=\"6022\"></td>\n        <td id=\"LC6022\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_base64Slice</span>(self, start, end)</td>\n      </tr>\n      <tr>\n        <td id=\"L6023\" class=\"blob-num js-line-number\" data-line-number=\"6023\"></td>\n        <td id=\"LC6023\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6024\" class=\"blob-num js-line-number\" data-line-number=\"6024\"></td>\n        <td id=\"LC6024\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ucs2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6025\" class=\"blob-num js-line-number\" data-line-number=\"6025\"></td>\n        <td id=\"LC6025\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ucs-2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6026\" class=\"blob-num js-line-number\" data-line-number=\"6026\"></td>\n        <td id=\"LC6026\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf16le<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6027\" class=\"blob-num js-line-number\" data-line-number=\"6027\"></td>\n        <td id=\"LC6027\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>utf-16le<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6028\" class=\"blob-num js-line-number\" data-line-number=\"6028\"></td>\n        <td id=\"LC6028\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">_utf16leSlice</span>(self, start, end)</td>\n      </tr>\n      <tr>\n        <td id=\"L6029\" class=\"blob-num js-line-number\" data-line-number=\"6029\"></td>\n        <td id=\"LC6029\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6030\" class=\"blob-num js-line-number\" data-line-number=\"6030\"></td>\n        <td id=\"LC6030\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6031\" class=\"blob-num js-line-number\" data-line-number=\"6031\"></td>\n        <td id=\"LC6031\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Unknown encoding<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6032\" class=\"blob-num js-line-number\" data-line-number=\"6032\"></td>\n        <td id=\"LC6032\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6033\" class=\"blob-num js-line-number\" data-line-number=\"6033\"></td>\n        <td id=\"LC6033\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> ret</td>\n      </tr>\n      <tr>\n        <td id=\"L6034\" class=\"blob-num js-line-number\" data-line-number=\"6034\"></td>\n        <td id=\"LC6034\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6035\" class=\"blob-num js-line-number\" data-line-number=\"6035\"></td>\n        <td id=\"LC6035\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6036\" class=\"blob-num js-line-number\" data-line-number=\"6036\"></td>\n        <td id=\"LC6036\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toJSON</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> () {</td>\n      </tr>\n      <tr>\n        <td id=\"L6037\" class=\"blob-num js-line-number\" data-line-number=\"6037\"></td>\n        <td id=\"LC6037\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6038\" class=\"blob-num js-line-number\" data-line-number=\"6038\"></td>\n        <td id=\"LC6038\" class=\"blob-code blob-code-inner js-file-line\">    type<span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Buffer<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L6039\" class=\"blob-num js-line-number\" data-line-number=\"6039\"></td>\n        <td id=\"LC6039\" class=\"blob-code blob-code-inner js-file-line\">    data<span class=\"pl-k\">:</span> <span class=\"pl-c1\">Array</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">slice</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_arr</span> <span class=\"pl-k\">||</span> <span class=\"pl-v\">this</span>, <span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6040\" class=\"blob-num js-line-number\" data-line-number=\"6040\"></td>\n        <td id=\"LC6040\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6041\" class=\"blob-num js-line-number\" data-line-number=\"6041\"></td>\n        <td id=\"LC6041\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6042\" class=\"blob-num js-line-number\" data-line-number=\"6042\"></td>\n        <td id=\"LC6042\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6043\" class=\"blob-num js-line-number\" data-line-number=\"6043\"></td>\n        <td id=\"LC6043\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">copy</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">target</span>, <span class=\"pl-smi\">target_start</span>, <span class=\"pl-smi\">start</span>, <span class=\"pl-smi\">end</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6044\" class=\"blob-num js-line-number\" data-line-number=\"6044\"></td>\n        <td id=\"LC6044\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> source <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6045\" class=\"blob-num js-line-number\" data-line-number=\"6045\"></td>\n        <td id=\"LC6045\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6046\" class=\"blob-num js-line-number\" data-line-number=\"6046\"></td>\n        <td id=\"LC6046\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>start) start <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6047\" class=\"blob-num js-line-number\" data-line-number=\"6047\"></td>\n        <td id=\"LC6047\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>end <span class=\"pl-k\">&amp;&amp;</span> end <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">0</span>) end <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6048\" class=\"blob-num js-line-number\" data-line-number=\"6048\"></td>\n        <td id=\"LC6048\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>target_start) target_start <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6049\" class=\"blob-num js-line-number\" data-line-number=\"6049\"></td>\n        <td id=\"LC6049\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6050\" class=\"blob-num js-line-number\" data-line-number=\"6050\"></td>\n        <td id=\"LC6050\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (end <span class=\"pl-k\">===</span> start) <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6051\" class=\"blob-num js-line-number\" data-line-number=\"6051\"></td>\n        <td id=\"LC6051\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">target</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">source</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6052\" class=\"blob-num js-line-number\" data-line-number=\"6052\"></td>\n        <td id=\"LC6052\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6053\" class=\"blob-num js-line-number\" data-line-number=\"6053\"></td>\n        <td id=\"LC6053\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(end <span class=\"pl-k\">&gt;=</span> start, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sourceEnd &lt; sourceStart<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6054\" class=\"blob-num js-line-number\" data-line-number=\"6054\"></td>\n        <td id=\"LC6054\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(target_start <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> target_start <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">target</span>.<span class=\"pl-c1\">length</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L6055\" class=\"blob-num js-line-number\" data-line-number=\"6055\"></td>\n        <td id=\"LC6055\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>targetStart out of bounds<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6056\" class=\"blob-num js-line-number\" data-line-number=\"6056\"></td>\n        <td id=\"LC6056\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(start <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> start <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">source</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sourceStart out of bounds<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6057\" class=\"blob-num js-line-number\" data-line-number=\"6057\"></td>\n        <td id=\"LC6057\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(end <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> end <span class=\"pl-k\">&lt;=</span> <span class=\"pl-smi\">source</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sourceEnd out of bounds<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6058\" class=\"blob-num js-line-number\" data-line-number=\"6058\"></td>\n        <td id=\"LC6058\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6059\" class=\"blob-num js-line-number\" data-line-number=\"6059\"></td>\n        <td id=\"LC6059\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (end <span class=\"pl-k\">&gt;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6060\" class=\"blob-num js-line-number\" data-line-number=\"6060\"></td>\n        <td id=\"LC6060\" class=\"blob-code blob-code-inner js-file-line\">    end <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6061\" class=\"blob-num js-line-number\" data-line-number=\"6061\"></td>\n        <td id=\"LC6061\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">target</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> target_start <span class=\"pl-k\">&lt;</span> end <span class=\"pl-k\">-</span> start)</td>\n      </tr>\n      <tr>\n        <td id=\"L6062\" class=\"blob-num js-line-number\" data-line-number=\"6062\"></td>\n        <td id=\"LC6062\" class=\"blob-code blob-code-inner js-file-line\">    end <span class=\"pl-k\">=</span> <span class=\"pl-smi\">target</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> target_start <span class=\"pl-k\">+</span> start</td>\n      </tr>\n      <tr>\n        <td id=\"L6063\" class=\"blob-num js-line-number\" data-line-number=\"6063\"></td>\n        <td id=\"LC6063\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6064\" class=\"blob-num js-line-number\" data-line-number=\"6064\"></td>\n        <td id=\"LC6064\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> end <span class=\"pl-k\">-</span> start</td>\n      </tr>\n      <tr>\n        <td id=\"L6065\" class=\"blob-num js-line-number\" data-line-number=\"6065\"></td>\n        <td id=\"LC6065\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6066\" class=\"blob-num js-line-number\" data-line-number=\"6066\"></td>\n        <td id=\"LC6066\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (len <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">100</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_useTypedArrays</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6067\" class=\"blob-num js-line-number\" data-line-number=\"6067\"></td>\n        <td id=\"LC6067\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> len; i<span class=\"pl-k\">++</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6068\" class=\"blob-num js-line-number\" data-line-number=\"6068\"></td>\n        <td id=\"LC6068\" class=\"blob-code blob-code-inner js-file-line\">      target[i <span class=\"pl-k\">+</span> target_start] <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>[i <span class=\"pl-k\">+</span> start]</td>\n      </tr>\n      <tr>\n        <td id=\"L6069\" class=\"blob-num js-line-number\" data-line-number=\"6069\"></td>\n        <td id=\"LC6069\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6070\" class=\"blob-num js-line-number\" data-line-number=\"6070\"></td>\n        <td id=\"LC6070\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">target</span>.<span class=\"pl-en\">_set</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">subarray</span>(start, start <span class=\"pl-k\">+</span> len), target_start)</td>\n      </tr>\n      <tr>\n        <td id=\"L6071\" class=\"blob-num js-line-number\" data-line-number=\"6071\"></td>\n        <td id=\"LC6071\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6072\" class=\"blob-num js-line-number\" data-line-number=\"6072\"></td>\n        <td id=\"LC6072\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6073\" class=\"blob-num js-line-number\" data-line-number=\"6073\"></td>\n        <td id=\"LC6073\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6074\" class=\"blob-num js-line-number\" data-line-number=\"6074\"></td>\n        <td id=\"LC6074\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_base64Slice</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">start</span>, <span class=\"pl-smi\">end</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6075\" class=\"blob-num js-line-number\" data-line-number=\"6075\"></td>\n        <td id=\"LC6075\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (start <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> end <span class=\"pl-k\">===</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6076\" class=\"blob-num js-line-number\" data-line-number=\"6076\"></td>\n        <td id=\"LC6076\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">base64</span>.<span class=\"pl-en\">fromByteArray</span>(buf)</td>\n      </tr>\n      <tr>\n        <td id=\"L6077\" class=\"blob-num js-line-number\" data-line-number=\"6077\"></td>\n        <td id=\"LC6077\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6078\" class=\"blob-num js-line-number\" data-line-number=\"6078\"></td>\n        <td id=\"LC6078\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">base64</span>.<span class=\"pl-en\">fromByteArray</span>(<span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">slice</span>(start, end))</td>\n      </tr>\n      <tr>\n        <td id=\"L6079\" class=\"blob-num js-line-number\" data-line-number=\"6079\"></td>\n        <td id=\"LC6079\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6080\" class=\"blob-num js-line-number\" data-line-number=\"6080\"></td>\n        <td id=\"LC6080\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6081\" class=\"blob-num js-line-number\" data-line-number=\"6081\"></td>\n        <td id=\"LC6081\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6082\" class=\"blob-num js-line-number\" data-line-number=\"6082\"></td>\n        <td id=\"LC6082\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_utf8Slice</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">start</span>, <span class=\"pl-smi\">end</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6083\" class=\"blob-num js-line-number\" data-line-number=\"6083\"></td>\n        <td id=\"LC6083\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> res <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6084\" class=\"blob-num js-line-number\" data-line-number=\"6084\"></td>\n        <td id=\"LC6084\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> tmp <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6085\" class=\"blob-num js-line-number\" data-line-number=\"6085\"></td>\n        <td id=\"LC6085\" class=\"blob-code blob-code-inner js-file-line\">  end <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">min</span>(<span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, end)</td>\n      </tr>\n      <tr>\n        <td id=\"L6086\" class=\"blob-num js-line-number\" data-line-number=\"6086\"></td>\n        <td id=\"LC6086\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6087\" class=\"blob-num js-line-number\" data-line-number=\"6087\"></td>\n        <td id=\"LC6087\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> start; i <span class=\"pl-k\">&lt;</span> end; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6088\" class=\"blob-num js-line-number\" data-line-number=\"6088\"></td>\n        <td id=\"LC6088\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (buf[i] <span class=\"pl-k\">&lt;=</span> <span class=\"pl-c1\">0x7F</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6089\" class=\"blob-num js-line-number\" data-line-number=\"6089\"></td>\n        <td id=\"LC6089\" class=\"blob-code blob-code-inner js-file-line\">      res <span class=\"pl-k\">+=</span> <span class=\"pl-en\">decodeUtf8Char</span>(tmp) <span class=\"pl-k\">+</span> <span class=\"pl-c1\">String</span>.<span class=\"pl-c1\">fromCharCode</span>(buf[i])</td>\n      </tr>\n      <tr>\n        <td id=\"L6090\" class=\"blob-num js-line-number\" data-line-number=\"6090\"></td>\n        <td id=\"LC6090\" class=\"blob-code blob-code-inner js-file-line\">      tmp <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6091\" class=\"blob-num js-line-number\" data-line-number=\"6091\"></td>\n        <td id=\"LC6091\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6092\" class=\"blob-num js-line-number\" data-line-number=\"6092\"></td>\n        <td id=\"LC6092\" class=\"blob-code blob-code-inner js-file-line\">      tmp <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> buf[i].<span class=\"pl-c1\">toString</span>(<span class=\"pl-c1\">16</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6093\" class=\"blob-num js-line-number\" data-line-number=\"6093\"></td>\n        <td id=\"LC6093\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L6094\" class=\"blob-num js-line-number\" data-line-number=\"6094\"></td>\n        <td id=\"LC6094\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6095\" class=\"blob-num js-line-number\" data-line-number=\"6095\"></td>\n        <td id=\"LC6095\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6096\" class=\"blob-num js-line-number\" data-line-number=\"6096\"></td>\n        <td id=\"LC6096\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> res <span class=\"pl-k\">+</span> <span class=\"pl-en\">decodeUtf8Char</span>(tmp)</td>\n      </tr>\n      <tr>\n        <td id=\"L6097\" class=\"blob-num js-line-number\" data-line-number=\"6097\"></td>\n        <td id=\"LC6097\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6098\" class=\"blob-num js-line-number\" data-line-number=\"6098\"></td>\n        <td id=\"LC6098\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6099\" class=\"blob-num js-line-number\" data-line-number=\"6099\"></td>\n        <td id=\"LC6099\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_asciiSlice</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">start</span>, <span class=\"pl-smi\">end</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6100\" class=\"blob-num js-line-number\" data-line-number=\"6100\"></td>\n        <td id=\"LC6100\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> ret <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6101\" class=\"blob-num js-line-number\" data-line-number=\"6101\"></td>\n        <td id=\"LC6101\" class=\"blob-code blob-code-inner js-file-line\">  end <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">min</span>(<span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, end)</td>\n      </tr>\n      <tr>\n        <td id=\"L6102\" class=\"blob-num js-line-number\" data-line-number=\"6102\"></td>\n        <td id=\"LC6102\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6103\" class=\"blob-num js-line-number\" data-line-number=\"6103\"></td>\n        <td id=\"LC6103\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> start; i <span class=\"pl-k\">&lt;</span> end; i<span class=\"pl-k\">++</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6104\" class=\"blob-num js-line-number\" data-line-number=\"6104\"></td>\n        <td id=\"LC6104\" class=\"blob-code blob-code-inner js-file-line\">    ret <span class=\"pl-k\">+=</span> <span class=\"pl-c1\">String</span>.<span class=\"pl-c1\">fromCharCode</span>(buf[i])</td>\n      </tr>\n      <tr>\n        <td id=\"L6105\" class=\"blob-num js-line-number\" data-line-number=\"6105\"></td>\n        <td id=\"LC6105\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> ret</td>\n      </tr>\n      <tr>\n        <td id=\"L6106\" class=\"blob-num js-line-number\" data-line-number=\"6106\"></td>\n        <td id=\"LC6106\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6107\" class=\"blob-num js-line-number\" data-line-number=\"6107\"></td>\n        <td id=\"LC6107\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6108\" class=\"blob-num js-line-number\" data-line-number=\"6108\"></td>\n        <td id=\"LC6108\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_binarySlice</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">start</span>, <span class=\"pl-smi\">end</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6109\" class=\"blob-num js-line-number\" data-line-number=\"6109\"></td>\n        <td id=\"LC6109\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_asciiSlice</span>(buf, start, end)</td>\n      </tr>\n      <tr>\n        <td id=\"L6110\" class=\"blob-num js-line-number\" data-line-number=\"6110\"></td>\n        <td id=\"LC6110\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6111\" class=\"blob-num js-line-number\" data-line-number=\"6111\"></td>\n        <td id=\"LC6111\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6112\" class=\"blob-num js-line-number\" data-line-number=\"6112\"></td>\n        <td id=\"LC6112\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_hexSlice</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">start</span>, <span class=\"pl-smi\">end</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6113\" class=\"blob-num js-line-number\" data-line-number=\"6113\"></td>\n        <td id=\"LC6113\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6114\" class=\"blob-num js-line-number\" data-line-number=\"6114\"></td>\n        <td id=\"LC6114\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6115\" class=\"blob-num js-line-number\" data-line-number=\"6115\"></td>\n        <td id=\"LC6115\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>start <span class=\"pl-k\">||</span> start <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span>) start <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6116\" class=\"blob-num js-line-number\" data-line-number=\"6116\"></td>\n        <td id=\"LC6116\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>end <span class=\"pl-k\">||</span> end <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">||</span> end <span class=\"pl-k\">&gt;</span> len) end <span class=\"pl-k\">=</span> len</td>\n      </tr>\n      <tr>\n        <td id=\"L6117\" class=\"blob-num js-line-number\" data-line-number=\"6117\"></td>\n        <td id=\"LC6117\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6118\" class=\"blob-num js-line-number\" data-line-number=\"6118\"></td>\n        <td id=\"LC6118\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> out <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6119\" class=\"blob-num js-line-number\" data-line-number=\"6119\"></td>\n        <td id=\"LC6119\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> start; i <span class=\"pl-k\">&lt;</span> end; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6120\" class=\"blob-num js-line-number\" data-line-number=\"6120\"></td>\n        <td id=\"LC6120\" class=\"blob-code blob-code-inner js-file-line\">    out <span class=\"pl-k\">+=</span> <span class=\"pl-en\">toHex</span>(buf[i])</td>\n      </tr>\n      <tr>\n        <td id=\"L6121\" class=\"blob-num js-line-number\" data-line-number=\"6121\"></td>\n        <td id=\"LC6121\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6122\" class=\"blob-num js-line-number\" data-line-number=\"6122\"></td>\n        <td id=\"LC6122\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> out</td>\n      </tr>\n      <tr>\n        <td id=\"L6123\" class=\"blob-num js-line-number\" data-line-number=\"6123\"></td>\n        <td id=\"LC6123\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6124\" class=\"blob-num js-line-number\" data-line-number=\"6124\"></td>\n        <td id=\"LC6124\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6125\" class=\"blob-num js-line-number\" data-line-number=\"6125\"></td>\n        <td id=\"LC6125\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_utf16leSlice</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">start</span>, <span class=\"pl-smi\">end</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6126\" class=\"blob-num js-line-number\" data-line-number=\"6126\"></td>\n        <td id=\"LC6126\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> bytes <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">slice</span>(start, end)</td>\n      </tr>\n      <tr>\n        <td id=\"L6127\" class=\"blob-num js-line-number\" data-line-number=\"6127\"></td>\n        <td id=\"LC6127\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> res <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6128\" class=\"blob-num js-line-number\" data-line-number=\"6128\"></td>\n        <td id=\"LC6128\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">bytes</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">+=</span> <span class=\"pl-c1\">2</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6129\" class=\"blob-num js-line-number\" data-line-number=\"6129\"></td>\n        <td id=\"LC6129\" class=\"blob-code blob-code-inner js-file-line\">    res <span class=\"pl-k\">+=</span> <span class=\"pl-c1\">String</span>.<span class=\"pl-c1\">fromCharCode</span>(bytes[i] <span class=\"pl-k\">+</span> bytes[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">1</span>] <span class=\"pl-k\">*</span> <span class=\"pl-c1\">256</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6130\" class=\"blob-num js-line-number\" data-line-number=\"6130\"></td>\n        <td id=\"LC6130\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6131\" class=\"blob-num js-line-number\" data-line-number=\"6131\"></td>\n        <td id=\"LC6131\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> res</td>\n      </tr>\n      <tr>\n        <td id=\"L6132\" class=\"blob-num js-line-number\" data-line-number=\"6132\"></td>\n        <td id=\"LC6132\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6133\" class=\"blob-num js-line-number\" data-line-number=\"6133\"></td>\n        <td id=\"LC6133\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6134\" class=\"blob-num js-line-number\" data-line-number=\"6134\"></td>\n        <td id=\"LC6134\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">slice</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">start</span>, <span class=\"pl-smi\">end</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6135\" class=\"blob-num js-line-number\" data-line-number=\"6135\"></td>\n        <td id=\"LC6135\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6136\" class=\"blob-num js-line-number\" data-line-number=\"6136\"></td>\n        <td id=\"LC6136\" class=\"blob-code blob-code-inner js-file-line\">  start <span class=\"pl-k\">=</span> <span class=\"pl-en\">clamp</span>(start, len, <span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6137\" class=\"blob-num js-line-number\" data-line-number=\"6137\"></td>\n        <td id=\"LC6137\" class=\"blob-code blob-code-inner js-file-line\">  end <span class=\"pl-k\">=</span> <span class=\"pl-en\">clamp</span>(end, len, len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6138\" class=\"blob-num js-line-number\" data-line-number=\"6138\"></td>\n        <td id=\"LC6138\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6139\" class=\"blob-num js-line-number\" data-line-number=\"6139\"></td>\n        <td id=\"LC6139\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_useTypedArrays</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6140\" class=\"blob-num js-line-number\" data-line-number=\"6140\"></td>\n        <td id=\"LC6140\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">_augment</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">subarray</span>(start, end))</td>\n      </tr>\n      <tr>\n        <td id=\"L6141\" class=\"blob-num js-line-number\" data-line-number=\"6141\"></td>\n        <td id=\"LC6141\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6142\" class=\"blob-num js-line-number\" data-line-number=\"6142\"></td>\n        <td id=\"LC6142\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> sliceLen <span class=\"pl-k\">=</span> end <span class=\"pl-k\">-</span> start</td>\n      </tr>\n      <tr>\n        <td id=\"L6143\" class=\"blob-num js-line-number\" data-line-number=\"6143\"></td>\n        <td id=\"LC6143\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> newBuf <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(sliceLen, <span class=\"pl-c1\">undefined</span>, <span class=\"pl-c1\">true</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6144\" class=\"blob-num js-line-number\" data-line-number=\"6144\"></td>\n        <td id=\"LC6144\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> sliceLen; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6145\" class=\"blob-num js-line-number\" data-line-number=\"6145\"></td>\n        <td id=\"LC6145\" class=\"blob-code blob-code-inner js-file-line\">      newBuf[i] <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>[i <span class=\"pl-k\">+</span> start]</td>\n      </tr>\n      <tr>\n        <td id=\"L6146\" class=\"blob-num js-line-number\" data-line-number=\"6146\"></td>\n        <td id=\"LC6146\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L6147\" class=\"blob-num js-line-number\" data-line-number=\"6147\"></td>\n        <td id=\"LC6147\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> newBuf</td>\n      </tr>\n      <tr>\n        <td id=\"L6148\" class=\"blob-num js-line-number\" data-line-number=\"6148\"></td>\n        <td id=\"LC6148\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6149\" class=\"blob-num js-line-number\" data-line-number=\"6149\"></td>\n        <td id=\"LC6149\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6150\" class=\"blob-num js-line-number\" data-line-number=\"6150\"></td>\n        <td id=\"LC6150\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6151\" class=\"blob-num js-line-number\" data-line-number=\"6151\"></td>\n        <td id=\"LC6151\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">get</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6152\" class=\"blob-num js-line-number\" data-line-number=\"6152\"></td>\n        <td id=\"LC6152\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">console</span>.<span class=\"pl-c1\">log</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.get() is deprecated. Access using array indexes instead.<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6153\" class=\"blob-num js-line-number\" data-line-number=\"6153\"></td>\n        <td id=\"LC6153\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">readUInt8</span>(offset)</td>\n      </tr>\n      <tr>\n        <td id=\"L6154\" class=\"blob-num js-line-number\" data-line-number=\"6154\"></td>\n        <td id=\"LC6154\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6155\" class=\"blob-num js-line-number\" data-line-number=\"6155\"></td>\n        <td id=\"LC6155\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6156\" class=\"blob-num js-line-number\" data-line-number=\"6156\"></td>\n        <td id=\"LC6156\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">set</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">v</span>, <span class=\"pl-smi\">offset</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6157\" class=\"blob-num js-line-number\" data-line-number=\"6157\"></td>\n        <td id=\"LC6157\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">console</span>.<span class=\"pl-c1\">log</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.set() is deprecated. Access using array indexes instead.<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6158\" class=\"blob-num js-line-number\" data-line-number=\"6158\"></td>\n        <td id=\"LC6158\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">writeUInt8</span>(v, offset)</td>\n      </tr>\n      <tr>\n        <td id=\"L6159\" class=\"blob-num js-line-number\" data-line-number=\"6159\"></td>\n        <td id=\"LC6159\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6160\" class=\"blob-num js-line-number\" data-line-number=\"6160\"></td>\n        <td id=\"LC6160\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6161\" class=\"blob-num js-line-number\" data-line-number=\"6161\"></td>\n        <td id=\"LC6161\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readUInt8</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6162\" class=\"blob-num js-line-number\" data-line-number=\"6162\"></td>\n        <td id=\"LC6162\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6163\" class=\"blob-num js-line-number\" data-line-number=\"6163\"></td>\n        <td id=\"LC6163\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6164\" class=\"blob-num js-line-number\" data-line-number=\"6164\"></td>\n        <td id=\"LC6164\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">&lt;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to read beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6165\" class=\"blob-num js-line-number\" data-line-number=\"6165\"></td>\n        <td id=\"LC6165\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6166\" class=\"blob-num js-line-number\" data-line-number=\"6166\"></td>\n        <td id=\"LC6166\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6167\" class=\"blob-num js-line-number\" data-line-number=\"6167\"></td>\n        <td id=\"LC6167\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6168\" class=\"blob-num js-line-number\" data-line-number=\"6168\"></td>\n        <td id=\"LC6168\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6169\" class=\"blob-num js-line-number\" data-line-number=\"6169\"></td>\n        <td id=\"LC6169\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6170\" class=\"blob-num js-line-number\" data-line-number=\"6170\"></td>\n        <td id=\"LC6170\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>[offset]</td>\n      </tr>\n      <tr>\n        <td id=\"L6171\" class=\"blob-num js-line-number\" data-line-number=\"6171\"></td>\n        <td id=\"LC6171\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6172\" class=\"blob-num js-line-number\" data-line-number=\"6172\"></td>\n        <td id=\"LC6172\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6173\" class=\"blob-num js-line-number\" data-line-number=\"6173\"></td>\n        <td id=\"LC6173\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_readUInt16</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6174\" class=\"blob-num js-line-number\" data-line-number=\"6174\"></td>\n        <td id=\"LC6174\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6175\" class=\"blob-num js-line-number\" data-line-number=\"6175\"></td>\n        <td id=\"LC6175\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6176\" class=\"blob-num js-line-number\" data-line-number=\"6176\"></td>\n        <td id=\"LC6176\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6177\" class=\"blob-num js-line-number\" data-line-number=\"6177\"></td>\n        <td id=\"LC6177\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to read beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6178\" class=\"blob-num js-line-number\" data-line-number=\"6178\"></td>\n        <td id=\"LC6178\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6179\" class=\"blob-num js-line-number\" data-line-number=\"6179\"></td>\n        <td id=\"LC6179\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6180\" class=\"blob-num js-line-number\" data-line-number=\"6180\"></td>\n        <td id=\"LC6180\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6181\" class=\"blob-num js-line-number\" data-line-number=\"6181\"></td>\n        <td id=\"LC6181\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6182\" class=\"blob-num js-line-number\" data-line-number=\"6182\"></td>\n        <td id=\"LC6182\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6183\" class=\"blob-num js-line-number\" data-line-number=\"6183\"></td>\n        <td id=\"LC6183\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6184\" class=\"blob-num js-line-number\" data-line-number=\"6184\"></td>\n        <td id=\"LC6184\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> val</td>\n      </tr>\n      <tr>\n        <td id=\"L6185\" class=\"blob-num js-line-number\" data-line-number=\"6185\"></td>\n        <td id=\"LC6185\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (littleEndian) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6186\" class=\"blob-num js-line-number\" data-line-number=\"6186\"></td>\n        <td id=\"LC6186\" class=\"blob-code blob-code-inner js-file-line\">    val <span class=\"pl-k\">=</span> buf[offset]</td>\n      </tr>\n      <tr>\n        <td id=\"L6187\" class=\"blob-num js-line-number\" data-line-number=\"6187\"></td>\n        <td id=\"LC6187\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6188\" class=\"blob-num js-line-number\" data-line-number=\"6188\"></td>\n        <td id=\"LC6188\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">|=</span> buf[offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>] <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">8</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6189\" class=\"blob-num js-line-number\" data-line-number=\"6189\"></td>\n        <td id=\"LC6189\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6190\" class=\"blob-num js-line-number\" data-line-number=\"6190\"></td>\n        <td id=\"LC6190\" class=\"blob-code blob-code-inner js-file-line\">    val <span class=\"pl-k\">=</span> buf[offset] <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">8</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6191\" class=\"blob-num js-line-number\" data-line-number=\"6191\"></td>\n        <td id=\"LC6191\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6192\" class=\"blob-num js-line-number\" data-line-number=\"6192\"></td>\n        <td id=\"LC6192\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">|=</span> buf[offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>]</td>\n      </tr>\n      <tr>\n        <td id=\"L6193\" class=\"blob-num js-line-number\" data-line-number=\"6193\"></td>\n        <td id=\"LC6193\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6194\" class=\"blob-num js-line-number\" data-line-number=\"6194\"></td>\n        <td id=\"LC6194\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> val</td>\n      </tr>\n      <tr>\n        <td id=\"L6195\" class=\"blob-num js-line-number\" data-line-number=\"6195\"></td>\n        <td id=\"LC6195\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6196\" class=\"blob-num js-line-number\" data-line-number=\"6196\"></td>\n        <td id=\"LC6196\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6197\" class=\"blob-num js-line-number\" data-line-number=\"6197\"></td>\n        <td id=\"LC6197\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readUInt16LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6198\" class=\"blob-num js-line-number\" data-line-number=\"6198\"></td>\n        <td id=\"LC6198\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readUInt16</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6199\" class=\"blob-num js-line-number\" data-line-number=\"6199\"></td>\n        <td id=\"LC6199\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6200\" class=\"blob-num js-line-number\" data-line-number=\"6200\"></td>\n        <td id=\"LC6200\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6201\" class=\"blob-num js-line-number\" data-line-number=\"6201\"></td>\n        <td id=\"LC6201\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readUInt16BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6202\" class=\"blob-num js-line-number\" data-line-number=\"6202\"></td>\n        <td id=\"LC6202\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readUInt16</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6203\" class=\"blob-num js-line-number\" data-line-number=\"6203\"></td>\n        <td id=\"LC6203\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6204\" class=\"blob-num js-line-number\" data-line-number=\"6204\"></td>\n        <td id=\"LC6204\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6205\" class=\"blob-num js-line-number\" data-line-number=\"6205\"></td>\n        <td id=\"LC6205\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_readUInt32</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6206\" class=\"blob-num js-line-number\" data-line-number=\"6206\"></td>\n        <td id=\"LC6206\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6207\" class=\"blob-num js-line-number\" data-line-number=\"6207\"></td>\n        <td id=\"LC6207\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6208\" class=\"blob-num js-line-number\" data-line-number=\"6208\"></td>\n        <td id=\"LC6208\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6209\" class=\"blob-num js-line-number\" data-line-number=\"6209\"></td>\n        <td id=\"LC6209\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to read beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6210\" class=\"blob-num js-line-number\" data-line-number=\"6210\"></td>\n        <td id=\"LC6210\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6211\" class=\"blob-num js-line-number\" data-line-number=\"6211\"></td>\n        <td id=\"LC6211\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6212\" class=\"blob-num js-line-number\" data-line-number=\"6212\"></td>\n        <td id=\"LC6212\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6213\" class=\"blob-num js-line-number\" data-line-number=\"6213\"></td>\n        <td id=\"LC6213\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6214\" class=\"blob-num js-line-number\" data-line-number=\"6214\"></td>\n        <td id=\"LC6214\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6215\" class=\"blob-num js-line-number\" data-line-number=\"6215\"></td>\n        <td id=\"LC6215\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6216\" class=\"blob-num js-line-number\" data-line-number=\"6216\"></td>\n        <td id=\"LC6216\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> val</td>\n      </tr>\n      <tr>\n        <td id=\"L6217\" class=\"blob-num js-line-number\" data-line-number=\"6217\"></td>\n        <td id=\"LC6217\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (littleEndian) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6218\" class=\"blob-num js-line-number\" data-line-number=\"6218\"></td>\n        <td id=\"LC6218\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span> <span class=\"pl-k\">&lt;</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6219\" class=\"blob-num js-line-number\" data-line-number=\"6219\"></td>\n        <td id=\"LC6219\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">=</span> buf[offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span>] <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">16</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6220\" class=\"blob-num js-line-number\" data-line-number=\"6220\"></td>\n        <td id=\"LC6220\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6221\" class=\"blob-num js-line-number\" data-line-number=\"6221\"></td>\n        <td id=\"LC6221\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">|=</span> buf[offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>] <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">8</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6222\" class=\"blob-num js-line-number\" data-line-number=\"6222\"></td>\n        <td id=\"LC6222\" class=\"blob-code blob-code-inner js-file-line\">    val <span class=\"pl-k\">|=</span> buf[offset]</td>\n      </tr>\n      <tr>\n        <td id=\"L6223\" class=\"blob-num js-line-number\" data-line-number=\"6223\"></td>\n        <td id=\"LC6223\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">&lt;</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6224\" class=\"blob-num js-line-number\" data-line-number=\"6224\"></td>\n        <td id=\"LC6224\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">=</span> val <span class=\"pl-k\">+</span> (buf[offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span>] <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">24</span> <span class=\"pl-k\">&gt;&gt;&gt;</span> <span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6225\" class=\"blob-num js-line-number\" data-line-number=\"6225\"></td>\n        <td id=\"LC6225\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6226\" class=\"blob-num js-line-number\" data-line-number=\"6226\"></td>\n        <td id=\"LC6226\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6227\" class=\"blob-num js-line-number\" data-line-number=\"6227\"></td>\n        <td id=\"LC6227\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">=</span> buf[offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>] <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">16</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6228\" class=\"blob-num js-line-number\" data-line-number=\"6228\"></td>\n        <td id=\"LC6228\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span> <span class=\"pl-k\">&lt;</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6229\" class=\"blob-num js-line-number\" data-line-number=\"6229\"></td>\n        <td id=\"LC6229\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">|=</span> buf[offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span>] <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">8</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6230\" class=\"blob-num js-line-number\" data-line-number=\"6230\"></td>\n        <td id=\"LC6230\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">&lt;</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6231\" class=\"blob-num js-line-number\" data-line-number=\"6231\"></td>\n        <td id=\"LC6231\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">|=</span> buf[offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span>]</td>\n      </tr>\n      <tr>\n        <td id=\"L6232\" class=\"blob-num js-line-number\" data-line-number=\"6232\"></td>\n        <td id=\"LC6232\" class=\"blob-code blob-code-inner js-file-line\">    val <span class=\"pl-k\">=</span> val <span class=\"pl-k\">+</span> (buf[offset] <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">24</span> <span class=\"pl-k\">&gt;&gt;&gt;</span> <span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6233\" class=\"blob-num js-line-number\" data-line-number=\"6233\"></td>\n        <td id=\"LC6233\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6234\" class=\"blob-num js-line-number\" data-line-number=\"6234\"></td>\n        <td id=\"LC6234\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> val</td>\n      </tr>\n      <tr>\n        <td id=\"L6235\" class=\"blob-num js-line-number\" data-line-number=\"6235\"></td>\n        <td id=\"LC6235\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6236\" class=\"blob-num js-line-number\" data-line-number=\"6236\"></td>\n        <td id=\"LC6236\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6237\" class=\"blob-num js-line-number\" data-line-number=\"6237\"></td>\n        <td id=\"LC6237\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readUInt32LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6238\" class=\"blob-num js-line-number\" data-line-number=\"6238\"></td>\n        <td id=\"LC6238\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readUInt32</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6239\" class=\"blob-num js-line-number\" data-line-number=\"6239\"></td>\n        <td id=\"LC6239\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6240\" class=\"blob-num js-line-number\" data-line-number=\"6240\"></td>\n        <td id=\"LC6240\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6241\" class=\"blob-num js-line-number\" data-line-number=\"6241\"></td>\n        <td id=\"LC6241\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readUInt32BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6242\" class=\"blob-num js-line-number\" data-line-number=\"6242\"></td>\n        <td id=\"LC6242\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readUInt32</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6243\" class=\"blob-num js-line-number\" data-line-number=\"6243\"></td>\n        <td id=\"LC6243\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6244\" class=\"blob-num js-line-number\" data-line-number=\"6244\"></td>\n        <td id=\"LC6244\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6245\" class=\"blob-num js-line-number\" data-line-number=\"6245\"></td>\n        <td id=\"LC6245\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readInt8</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6246\" class=\"blob-num js-line-number\" data-line-number=\"6246\"></td>\n        <td id=\"LC6246\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6247\" class=\"blob-num js-line-number\" data-line-number=\"6247\"></td>\n        <td id=\"LC6247\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L6248\" class=\"blob-num js-line-number\" data-line-number=\"6248\"></td>\n        <td id=\"LC6248\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6249\" class=\"blob-num js-line-number\" data-line-number=\"6249\"></td>\n        <td id=\"LC6249\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">&lt;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to read beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6250\" class=\"blob-num js-line-number\" data-line-number=\"6250\"></td>\n        <td id=\"LC6250\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6251\" class=\"blob-num js-line-number\" data-line-number=\"6251\"></td>\n        <td id=\"LC6251\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6252\" class=\"blob-num js-line-number\" data-line-number=\"6252\"></td>\n        <td id=\"LC6252\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6253\" class=\"blob-num js-line-number\" data-line-number=\"6253\"></td>\n        <td id=\"LC6253\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6254\" class=\"blob-num js-line-number\" data-line-number=\"6254\"></td>\n        <td id=\"LC6254\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6255\" class=\"blob-num js-line-number\" data-line-number=\"6255\"></td>\n        <td id=\"LC6255\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> neg <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>[offset] <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x80</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6256\" class=\"blob-num js-line-number\" data-line-number=\"6256\"></td>\n        <td id=\"LC6256\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (neg)</td>\n      </tr>\n      <tr>\n        <td id=\"L6257\" class=\"blob-num js-line-number\" data-line-number=\"6257\"></td>\n        <td id=\"LC6257\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> (<span class=\"pl-c1\">0xff</span> <span class=\"pl-k\">-</span> <span class=\"pl-v\">this</span>[offset] <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>) <span class=\"pl-k\">*</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6258\" class=\"blob-num js-line-number\" data-line-number=\"6258\"></td>\n        <td id=\"LC6258\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6259\" class=\"blob-num js-line-number\" data-line-number=\"6259\"></td>\n        <td id=\"LC6259\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>[offset]</td>\n      </tr>\n      <tr>\n        <td id=\"L6260\" class=\"blob-num js-line-number\" data-line-number=\"6260\"></td>\n        <td id=\"LC6260\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6261\" class=\"blob-num js-line-number\" data-line-number=\"6261\"></td>\n        <td id=\"LC6261\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6262\" class=\"blob-num js-line-number\" data-line-number=\"6262\"></td>\n        <td id=\"LC6262\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_readInt16</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6263\" class=\"blob-num js-line-number\" data-line-number=\"6263\"></td>\n        <td id=\"LC6263\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6264\" class=\"blob-num js-line-number\" data-line-number=\"6264\"></td>\n        <td id=\"LC6264\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6265\" class=\"blob-num js-line-number\" data-line-number=\"6265\"></td>\n        <td id=\"LC6265\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6266\" class=\"blob-num js-line-number\" data-line-number=\"6266\"></td>\n        <td id=\"LC6266\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to read beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6267\" class=\"blob-num js-line-number\" data-line-number=\"6267\"></td>\n        <td id=\"LC6267\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6268\" class=\"blob-num js-line-number\" data-line-number=\"6268\"></td>\n        <td id=\"LC6268\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6269\" class=\"blob-num js-line-number\" data-line-number=\"6269\"></td>\n        <td id=\"LC6269\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6270\" class=\"blob-num js-line-number\" data-line-number=\"6270\"></td>\n        <td id=\"LC6270\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6271\" class=\"blob-num js-line-number\" data-line-number=\"6271\"></td>\n        <td id=\"LC6271\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6272\" class=\"blob-num js-line-number\" data-line-number=\"6272\"></td>\n        <td id=\"LC6272\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6273\" class=\"blob-num js-line-number\" data-line-number=\"6273\"></td>\n        <td id=\"LC6273\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> val <span class=\"pl-k\">=</span> <span class=\"pl-en\">_readUInt16</span>(buf, offset, littleEndian, <span class=\"pl-c1\">true</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6274\" class=\"blob-num js-line-number\" data-line-number=\"6274\"></td>\n        <td id=\"LC6274\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> neg <span class=\"pl-k\">=</span> val <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x8000</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6275\" class=\"blob-num js-line-number\" data-line-number=\"6275\"></td>\n        <td id=\"LC6275\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (neg)</td>\n      </tr>\n      <tr>\n        <td id=\"L6276\" class=\"blob-num js-line-number\" data-line-number=\"6276\"></td>\n        <td id=\"LC6276\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> (<span class=\"pl-c1\">0xffff</span> <span class=\"pl-k\">-</span> val <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>) <span class=\"pl-k\">*</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6277\" class=\"blob-num js-line-number\" data-line-number=\"6277\"></td>\n        <td id=\"LC6277\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6278\" class=\"blob-num js-line-number\" data-line-number=\"6278\"></td>\n        <td id=\"LC6278\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> val</td>\n      </tr>\n      <tr>\n        <td id=\"L6279\" class=\"blob-num js-line-number\" data-line-number=\"6279\"></td>\n        <td id=\"LC6279\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6280\" class=\"blob-num js-line-number\" data-line-number=\"6280\"></td>\n        <td id=\"LC6280\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6281\" class=\"blob-num js-line-number\" data-line-number=\"6281\"></td>\n        <td id=\"LC6281\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readInt16LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6282\" class=\"blob-num js-line-number\" data-line-number=\"6282\"></td>\n        <td id=\"LC6282\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readInt16</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6283\" class=\"blob-num js-line-number\" data-line-number=\"6283\"></td>\n        <td id=\"LC6283\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6284\" class=\"blob-num js-line-number\" data-line-number=\"6284\"></td>\n        <td id=\"LC6284\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6285\" class=\"blob-num js-line-number\" data-line-number=\"6285\"></td>\n        <td id=\"LC6285\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readInt16BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6286\" class=\"blob-num js-line-number\" data-line-number=\"6286\"></td>\n        <td id=\"LC6286\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readInt16</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6287\" class=\"blob-num js-line-number\" data-line-number=\"6287\"></td>\n        <td id=\"LC6287\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6288\" class=\"blob-num js-line-number\" data-line-number=\"6288\"></td>\n        <td id=\"LC6288\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6289\" class=\"blob-num js-line-number\" data-line-number=\"6289\"></td>\n        <td id=\"LC6289\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_readInt32</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6290\" class=\"blob-num js-line-number\" data-line-number=\"6290\"></td>\n        <td id=\"LC6290\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6291\" class=\"blob-num js-line-number\" data-line-number=\"6291\"></td>\n        <td id=\"LC6291\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6292\" class=\"blob-num js-line-number\" data-line-number=\"6292\"></td>\n        <td id=\"LC6292\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6293\" class=\"blob-num js-line-number\" data-line-number=\"6293\"></td>\n        <td id=\"LC6293\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to read beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6294\" class=\"blob-num js-line-number\" data-line-number=\"6294\"></td>\n        <td id=\"LC6294\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6295\" class=\"blob-num js-line-number\" data-line-number=\"6295\"></td>\n        <td id=\"LC6295\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6296\" class=\"blob-num js-line-number\" data-line-number=\"6296\"></td>\n        <td id=\"LC6296\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6297\" class=\"blob-num js-line-number\" data-line-number=\"6297\"></td>\n        <td id=\"LC6297\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6298\" class=\"blob-num js-line-number\" data-line-number=\"6298\"></td>\n        <td id=\"LC6298\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6299\" class=\"blob-num js-line-number\" data-line-number=\"6299\"></td>\n        <td id=\"LC6299\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6300\" class=\"blob-num js-line-number\" data-line-number=\"6300\"></td>\n        <td id=\"LC6300\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> val <span class=\"pl-k\">=</span> <span class=\"pl-en\">_readUInt32</span>(buf, offset, littleEndian, <span class=\"pl-c1\">true</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6301\" class=\"blob-num js-line-number\" data-line-number=\"6301\"></td>\n        <td id=\"LC6301\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> neg <span class=\"pl-k\">=</span> val <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x80000000</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6302\" class=\"blob-num js-line-number\" data-line-number=\"6302\"></td>\n        <td id=\"LC6302\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (neg)</td>\n      </tr>\n      <tr>\n        <td id=\"L6303\" class=\"blob-num js-line-number\" data-line-number=\"6303\"></td>\n        <td id=\"LC6303\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> (<span class=\"pl-c1\">0xffffffff</span> <span class=\"pl-k\">-</span> val <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>) <span class=\"pl-k\">*</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6304\" class=\"blob-num js-line-number\" data-line-number=\"6304\"></td>\n        <td id=\"LC6304\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6305\" class=\"blob-num js-line-number\" data-line-number=\"6305\"></td>\n        <td id=\"LC6305\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> val</td>\n      </tr>\n      <tr>\n        <td id=\"L6306\" class=\"blob-num js-line-number\" data-line-number=\"6306\"></td>\n        <td id=\"LC6306\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6307\" class=\"blob-num js-line-number\" data-line-number=\"6307\"></td>\n        <td id=\"LC6307\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6308\" class=\"blob-num js-line-number\" data-line-number=\"6308\"></td>\n        <td id=\"LC6308\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readInt32LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6309\" class=\"blob-num js-line-number\" data-line-number=\"6309\"></td>\n        <td id=\"LC6309\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readInt32</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6310\" class=\"blob-num js-line-number\" data-line-number=\"6310\"></td>\n        <td id=\"LC6310\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6311\" class=\"blob-num js-line-number\" data-line-number=\"6311\"></td>\n        <td id=\"LC6311\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6312\" class=\"blob-num js-line-number\" data-line-number=\"6312\"></td>\n        <td id=\"LC6312\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readInt32BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6313\" class=\"blob-num js-line-number\" data-line-number=\"6313\"></td>\n        <td id=\"LC6313\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readInt32</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6314\" class=\"blob-num js-line-number\" data-line-number=\"6314\"></td>\n        <td id=\"LC6314\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6315\" class=\"blob-num js-line-number\" data-line-number=\"6315\"></td>\n        <td id=\"LC6315\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6316\" class=\"blob-num js-line-number\" data-line-number=\"6316\"></td>\n        <td id=\"LC6316\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_readFloat</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6317\" class=\"blob-num js-line-number\" data-line-number=\"6317\"></td>\n        <td id=\"LC6317\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6318\" class=\"blob-num js-line-number\" data-line-number=\"6318\"></td>\n        <td id=\"LC6318\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6319\" class=\"blob-num js-line-number\" data-line-number=\"6319\"></td>\n        <td id=\"LC6319\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to read beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6320\" class=\"blob-num js-line-number\" data-line-number=\"6320\"></td>\n        <td id=\"LC6320\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6321\" class=\"blob-num js-line-number\" data-line-number=\"6321\"></td>\n        <td id=\"LC6321\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6322\" class=\"blob-num js-line-number\" data-line-number=\"6322\"></td>\n        <td id=\"LC6322\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ieee754</span>.<span class=\"pl-en\">read</span>(buf, offset, littleEndian, <span class=\"pl-c1\">23</span>, <span class=\"pl-c1\">4</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6323\" class=\"blob-num js-line-number\" data-line-number=\"6323\"></td>\n        <td id=\"LC6323\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6324\" class=\"blob-num js-line-number\" data-line-number=\"6324\"></td>\n        <td id=\"LC6324\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6325\" class=\"blob-num js-line-number\" data-line-number=\"6325\"></td>\n        <td id=\"LC6325\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readFloatLE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6326\" class=\"blob-num js-line-number\" data-line-number=\"6326\"></td>\n        <td id=\"LC6326\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readFloat</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6327\" class=\"blob-num js-line-number\" data-line-number=\"6327\"></td>\n        <td id=\"LC6327\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6328\" class=\"blob-num js-line-number\" data-line-number=\"6328\"></td>\n        <td id=\"LC6328\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6329\" class=\"blob-num js-line-number\" data-line-number=\"6329\"></td>\n        <td id=\"LC6329\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readFloatBE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6330\" class=\"blob-num js-line-number\" data-line-number=\"6330\"></td>\n        <td id=\"LC6330\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readFloat</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6331\" class=\"blob-num js-line-number\" data-line-number=\"6331\"></td>\n        <td id=\"LC6331\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6332\" class=\"blob-num js-line-number\" data-line-number=\"6332\"></td>\n        <td id=\"LC6332\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6333\" class=\"blob-num js-line-number\" data-line-number=\"6333\"></td>\n        <td id=\"LC6333\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_readDouble</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6334\" class=\"blob-num js-line-number\" data-line-number=\"6334\"></td>\n        <td id=\"LC6334\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6335\" class=\"blob-num js-line-number\" data-line-number=\"6335\"></td>\n        <td id=\"LC6335\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6336\" class=\"blob-num js-line-number\" data-line-number=\"6336\"></td>\n        <td id=\"LC6336\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">7</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to read beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6337\" class=\"blob-num js-line-number\" data-line-number=\"6337\"></td>\n        <td id=\"LC6337\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6338\" class=\"blob-num js-line-number\" data-line-number=\"6338\"></td>\n        <td id=\"LC6338\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6339\" class=\"blob-num js-line-number\" data-line-number=\"6339\"></td>\n        <td id=\"LC6339\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ieee754</span>.<span class=\"pl-en\">read</span>(buf, offset, littleEndian, <span class=\"pl-c1\">52</span>, <span class=\"pl-c1\">8</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6340\" class=\"blob-num js-line-number\" data-line-number=\"6340\"></td>\n        <td id=\"LC6340\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6341\" class=\"blob-num js-line-number\" data-line-number=\"6341\"></td>\n        <td id=\"LC6341\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6342\" class=\"blob-num js-line-number\" data-line-number=\"6342\"></td>\n        <td id=\"LC6342\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readDoubleLE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6343\" class=\"blob-num js-line-number\" data-line-number=\"6343\"></td>\n        <td id=\"LC6343\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readDouble</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6344\" class=\"blob-num js-line-number\" data-line-number=\"6344\"></td>\n        <td id=\"LC6344\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6345\" class=\"blob-num js-line-number\" data-line-number=\"6345\"></td>\n        <td id=\"LC6345\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6346\" class=\"blob-num js-line-number\" data-line-number=\"6346\"></td>\n        <td id=\"LC6346\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">readDoubleBE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6347\" class=\"blob-num js-line-number\" data-line-number=\"6347\"></td>\n        <td id=\"LC6347\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">_readDouble</span>(<span class=\"pl-v\">this</span>, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6348\" class=\"blob-num js-line-number\" data-line-number=\"6348\"></td>\n        <td id=\"LC6348\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6349\" class=\"blob-num js-line-number\" data-line-number=\"6349\"></td>\n        <td id=\"LC6349\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6350\" class=\"blob-num js-line-number\" data-line-number=\"6350\"></td>\n        <td id=\"LC6350\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeUInt8</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6351\" class=\"blob-num js-line-number\" data-line-number=\"6351\"></td>\n        <td id=\"LC6351\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6352\" class=\"blob-num js-line-number\" data-line-number=\"6352\"></td>\n        <td id=\"LC6352\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6353\" class=\"blob-num js-line-number\" data-line-number=\"6353\"></td>\n        <td id=\"LC6353\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6354\" class=\"blob-num js-line-number\" data-line-number=\"6354\"></td>\n        <td id=\"LC6354\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">&lt;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>trying to write beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6355\" class=\"blob-num js-line-number\" data-line-number=\"6355\"></td>\n        <td id=\"LC6355\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">verifuint</span>(value, <span class=\"pl-c1\">0xff</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6356\" class=\"blob-num js-line-number\" data-line-number=\"6356\"></td>\n        <td id=\"LC6356\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6357\" class=\"blob-num js-line-number\" data-line-number=\"6357\"></td>\n        <td id=\"LC6357\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6358\" class=\"blob-num js-line-number\" data-line-number=\"6358\"></td>\n        <td id=\"LC6358\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>) <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6359\" class=\"blob-num js-line-number\" data-line-number=\"6359\"></td>\n        <td id=\"LC6359\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6360\" class=\"blob-num js-line-number\" data-line-number=\"6360\"></td>\n        <td id=\"LC6360\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>[offset] <span class=\"pl-k\">=</span> value</td>\n      </tr>\n      <tr>\n        <td id=\"L6361\" class=\"blob-num js-line-number\" data-line-number=\"6361\"></td>\n        <td id=\"LC6361\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6362\" class=\"blob-num js-line-number\" data-line-number=\"6362\"></td>\n        <td id=\"LC6362\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6363\" class=\"blob-num js-line-number\" data-line-number=\"6363\"></td>\n        <td id=\"LC6363\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_writeUInt16</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6364\" class=\"blob-num js-line-number\" data-line-number=\"6364\"></td>\n        <td id=\"LC6364\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6365\" class=\"blob-num js-line-number\" data-line-number=\"6365\"></td>\n        <td id=\"LC6365\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6366\" class=\"blob-num js-line-number\" data-line-number=\"6366\"></td>\n        <td id=\"LC6366\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6367\" class=\"blob-num js-line-number\" data-line-number=\"6367\"></td>\n        <td id=\"LC6367\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6368\" class=\"blob-num js-line-number\" data-line-number=\"6368\"></td>\n        <td id=\"LC6368\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>trying to write beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6369\" class=\"blob-num js-line-number\" data-line-number=\"6369\"></td>\n        <td id=\"LC6369\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">verifuint</span>(value, <span class=\"pl-c1\">0xffff</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6370\" class=\"blob-num js-line-number\" data-line-number=\"6370\"></td>\n        <td id=\"LC6370\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6371\" class=\"blob-num js-line-number\" data-line-number=\"6371\"></td>\n        <td id=\"LC6371\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6372\" class=\"blob-num js-line-number\" data-line-number=\"6372\"></td>\n        <td id=\"LC6372\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6373\" class=\"blob-num js-line-number\" data-line-number=\"6373\"></td>\n        <td id=\"LC6373\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6374\" class=\"blob-num js-line-number\" data-line-number=\"6374\"></td>\n        <td id=\"LC6374\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6375\" class=\"blob-num js-line-number\" data-line-number=\"6375\"></td>\n        <td id=\"LC6375\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6376\" class=\"blob-num js-line-number\" data-line-number=\"6376\"></td>\n        <td id=\"LC6376\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">min</span>(len <span class=\"pl-k\">-</span> offset, <span class=\"pl-c1\">2</span>); i <span class=\"pl-k\">&lt;</span> j; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6377\" class=\"blob-num js-line-number\" data-line-number=\"6377\"></td>\n        <td id=\"LC6377\" class=\"blob-code blob-code-inner js-file-line\">    buf[offset <span class=\"pl-k\">+</span> i] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6378\" class=\"blob-num js-line-number\" data-line-number=\"6378\"></td>\n        <td id=\"LC6378\" class=\"blob-code blob-code-inner js-file-line\">        (value <span class=\"pl-k\">&amp;</span> (<span class=\"pl-c1\">0xff</span> <span class=\"pl-k\">&lt;&lt;</span> (<span class=\"pl-c1\">8</span> <span class=\"pl-k\">*</span> (littleEndian <span class=\"pl-k\">?</span> i <span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">-</span> i)))) <span class=\"pl-k\">&gt;&gt;&gt;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6379\" class=\"blob-num js-line-number\" data-line-number=\"6379\"></td>\n        <td id=\"LC6379\" class=\"blob-code blob-code-inner js-file-line\">            (littleEndian <span class=\"pl-k\">?</span> i <span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">-</span> i) <span class=\"pl-k\">*</span> <span class=\"pl-c1\">8</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6380\" class=\"blob-num js-line-number\" data-line-number=\"6380\"></td>\n        <td id=\"LC6380\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6381\" class=\"blob-num js-line-number\" data-line-number=\"6381\"></td>\n        <td id=\"LC6381\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6382\" class=\"blob-num js-line-number\" data-line-number=\"6382\"></td>\n        <td id=\"LC6382\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6383\" class=\"blob-num js-line-number\" data-line-number=\"6383\"></td>\n        <td id=\"LC6383\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeUInt16LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6384\" class=\"blob-num js-line-number\" data-line-number=\"6384\"></td>\n        <td id=\"LC6384\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeUInt16</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6385\" class=\"blob-num js-line-number\" data-line-number=\"6385\"></td>\n        <td id=\"LC6385\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6386\" class=\"blob-num js-line-number\" data-line-number=\"6386\"></td>\n        <td id=\"LC6386\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6387\" class=\"blob-num js-line-number\" data-line-number=\"6387\"></td>\n        <td id=\"LC6387\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeUInt16BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6388\" class=\"blob-num js-line-number\" data-line-number=\"6388\"></td>\n        <td id=\"LC6388\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeUInt16</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6389\" class=\"blob-num js-line-number\" data-line-number=\"6389\"></td>\n        <td id=\"LC6389\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6390\" class=\"blob-num js-line-number\" data-line-number=\"6390\"></td>\n        <td id=\"LC6390\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6391\" class=\"blob-num js-line-number\" data-line-number=\"6391\"></td>\n        <td id=\"LC6391\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_writeUInt32</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6392\" class=\"blob-num js-line-number\" data-line-number=\"6392\"></td>\n        <td id=\"LC6392\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6393\" class=\"blob-num js-line-number\" data-line-number=\"6393\"></td>\n        <td id=\"LC6393\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6394\" class=\"blob-num js-line-number\" data-line-number=\"6394\"></td>\n        <td id=\"LC6394\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6395\" class=\"blob-num js-line-number\" data-line-number=\"6395\"></td>\n        <td id=\"LC6395\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6396\" class=\"blob-num js-line-number\" data-line-number=\"6396\"></td>\n        <td id=\"LC6396\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>trying to write beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6397\" class=\"blob-num js-line-number\" data-line-number=\"6397\"></td>\n        <td id=\"LC6397\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">verifuint</span>(value, <span class=\"pl-c1\">0xffffffff</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6398\" class=\"blob-num js-line-number\" data-line-number=\"6398\"></td>\n        <td id=\"LC6398\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6399\" class=\"blob-num js-line-number\" data-line-number=\"6399\"></td>\n        <td id=\"LC6399\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6400\" class=\"blob-num js-line-number\" data-line-number=\"6400\"></td>\n        <td id=\"LC6400\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6401\" class=\"blob-num js-line-number\" data-line-number=\"6401\"></td>\n        <td id=\"LC6401\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6402\" class=\"blob-num js-line-number\" data-line-number=\"6402\"></td>\n        <td id=\"LC6402\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6403\" class=\"blob-num js-line-number\" data-line-number=\"6403\"></td>\n        <td id=\"LC6403\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6404\" class=\"blob-num js-line-number\" data-line-number=\"6404\"></td>\n        <td id=\"LC6404\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">min</span>(len <span class=\"pl-k\">-</span> offset, <span class=\"pl-c1\">4</span>); i <span class=\"pl-k\">&lt;</span> j; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6405\" class=\"blob-num js-line-number\" data-line-number=\"6405\"></td>\n        <td id=\"LC6405\" class=\"blob-code blob-code-inner js-file-line\">    buf[offset <span class=\"pl-k\">+</span> i] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6406\" class=\"blob-num js-line-number\" data-line-number=\"6406\"></td>\n        <td id=\"LC6406\" class=\"blob-code blob-code-inner js-file-line\">        (value <span class=\"pl-k\">&gt;&gt;&gt;</span> (littleEndian <span class=\"pl-k\">?</span> i <span class=\"pl-k\">:</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">-</span> i) <span class=\"pl-k\">*</span> <span class=\"pl-c1\">8</span>) <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xff</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6407\" class=\"blob-num js-line-number\" data-line-number=\"6407\"></td>\n        <td id=\"LC6407\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6408\" class=\"blob-num js-line-number\" data-line-number=\"6408\"></td>\n        <td id=\"LC6408\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6409\" class=\"blob-num js-line-number\" data-line-number=\"6409\"></td>\n        <td id=\"LC6409\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6410\" class=\"blob-num js-line-number\" data-line-number=\"6410\"></td>\n        <td id=\"LC6410\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeUInt32LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6411\" class=\"blob-num js-line-number\" data-line-number=\"6411\"></td>\n        <td id=\"LC6411\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeUInt32</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6412\" class=\"blob-num js-line-number\" data-line-number=\"6412\"></td>\n        <td id=\"LC6412\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6413\" class=\"blob-num js-line-number\" data-line-number=\"6413\"></td>\n        <td id=\"LC6413\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6414\" class=\"blob-num js-line-number\" data-line-number=\"6414\"></td>\n        <td id=\"LC6414\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeUInt32BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6415\" class=\"blob-num js-line-number\" data-line-number=\"6415\"></td>\n        <td id=\"LC6415\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeUInt32</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6416\" class=\"blob-num js-line-number\" data-line-number=\"6416\"></td>\n        <td id=\"LC6416\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6417\" class=\"blob-num js-line-number\" data-line-number=\"6417\"></td>\n        <td id=\"LC6417\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6418\" class=\"blob-num js-line-number\" data-line-number=\"6418\"></td>\n        <td id=\"LC6418\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeInt8</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6419\" class=\"blob-num js-line-number\" data-line-number=\"6419\"></td>\n        <td id=\"LC6419\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6420\" class=\"blob-num js-line-number\" data-line-number=\"6420\"></td>\n        <td id=\"LC6420\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6421\" class=\"blob-num js-line-number\" data-line-number=\"6421\"></td>\n        <td id=\"LC6421\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6422\" class=\"blob-num js-line-number\" data-line-number=\"6422\"></td>\n        <td id=\"LC6422\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">&lt;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to write beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6423\" class=\"blob-num js-line-number\" data-line-number=\"6423\"></td>\n        <td id=\"LC6423\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">verifsint</span>(value, <span class=\"pl-c1\">0x7f</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">0x80</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6424\" class=\"blob-num js-line-number\" data-line-number=\"6424\"></td>\n        <td id=\"LC6424\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6425\" class=\"blob-num js-line-number\" data-line-number=\"6425\"></td>\n        <td id=\"LC6425\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6426\" class=\"blob-num js-line-number\" data-line-number=\"6426\"></td>\n        <td id=\"LC6426\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6427\" class=\"blob-num js-line-number\" data-line-number=\"6427\"></td>\n        <td id=\"LC6427\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6428\" class=\"blob-num js-line-number\" data-line-number=\"6428\"></td>\n        <td id=\"LC6428\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6429\" class=\"blob-num js-line-number\" data-line-number=\"6429\"></td>\n        <td id=\"LC6429\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6430\" class=\"blob-num js-line-number\" data-line-number=\"6430\"></td>\n        <td id=\"LC6430\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">writeUInt8</span>(value, offset, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6431\" class=\"blob-num js-line-number\" data-line-number=\"6431\"></td>\n        <td id=\"LC6431\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6432\" class=\"blob-num js-line-number\" data-line-number=\"6432\"></td>\n        <td id=\"LC6432\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">writeUInt8</span>(<span class=\"pl-c1\">0xff</span> <span class=\"pl-k\">+</span> value <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>, offset, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6433\" class=\"blob-num js-line-number\" data-line-number=\"6433\"></td>\n        <td id=\"LC6433\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6434\" class=\"blob-num js-line-number\" data-line-number=\"6434\"></td>\n        <td id=\"LC6434\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6435\" class=\"blob-num js-line-number\" data-line-number=\"6435\"></td>\n        <td id=\"LC6435\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_writeInt16</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6436\" class=\"blob-num js-line-number\" data-line-number=\"6436\"></td>\n        <td id=\"LC6436\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6437\" class=\"blob-num js-line-number\" data-line-number=\"6437\"></td>\n        <td id=\"LC6437\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6438\" class=\"blob-num js-line-number\" data-line-number=\"6438\"></td>\n        <td id=\"LC6438\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6439\" class=\"blob-num js-line-number\" data-line-number=\"6439\"></td>\n        <td id=\"LC6439\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6440\" class=\"blob-num js-line-number\" data-line-number=\"6440\"></td>\n        <td id=\"LC6440\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to write beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6441\" class=\"blob-num js-line-number\" data-line-number=\"6441\"></td>\n        <td id=\"LC6441\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">verifsint</span>(value, <span class=\"pl-c1\">0x7fff</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">0x8000</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6442\" class=\"blob-num js-line-number\" data-line-number=\"6442\"></td>\n        <td id=\"LC6442\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6443\" class=\"blob-num js-line-number\" data-line-number=\"6443\"></td>\n        <td id=\"LC6443\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6444\" class=\"blob-num js-line-number\" data-line-number=\"6444\"></td>\n        <td id=\"LC6444\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6445\" class=\"blob-num js-line-number\" data-line-number=\"6445\"></td>\n        <td id=\"LC6445\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6446\" class=\"blob-num js-line-number\" data-line-number=\"6446\"></td>\n        <td id=\"LC6446\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6447\" class=\"blob-num js-line-number\" data-line-number=\"6447\"></td>\n        <td id=\"LC6447\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6448\" class=\"blob-num js-line-number\" data-line-number=\"6448\"></td>\n        <td id=\"LC6448\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6449\" class=\"blob-num js-line-number\" data-line-number=\"6449\"></td>\n        <td id=\"LC6449\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">_writeUInt16</span>(buf, value, offset, littleEndian, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6450\" class=\"blob-num js-line-number\" data-line-number=\"6450\"></td>\n        <td id=\"LC6450\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6451\" class=\"blob-num js-line-number\" data-line-number=\"6451\"></td>\n        <td id=\"LC6451\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">_writeUInt16</span>(buf, <span class=\"pl-c1\">0xffff</span> <span class=\"pl-k\">+</span> value <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>, offset, littleEndian, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6452\" class=\"blob-num js-line-number\" data-line-number=\"6452\"></td>\n        <td id=\"LC6452\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6453\" class=\"blob-num js-line-number\" data-line-number=\"6453\"></td>\n        <td id=\"LC6453\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6454\" class=\"blob-num js-line-number\" data-line-number=\"6454\"></td>\n        <td id=\"LC6454\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeInt16LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6455\" class=\"blob-num js-line-number\" data-line-number=\"6455\"></td>\n        <td id=\"LC6455\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeInt16</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6456\" class=\"blob-num js-line-number\" data-line-number=\"6456\"></td>\n        <td id=\"LC6456\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6457\" class=\"blob-num js-line-number\" data-line-number=\"6457\"></td>\n        <td id=\"LC6457\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6458\" class=\"blob-num js-line-number\" data-line-number=\"6458\"></td>\n        <td id=\"LC6458\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeInt16BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6459\" class=\"blob-num js-line-number\" data-line-number=\"6459\"></td>\n        <td id=\"LC6459\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeInt16</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6460\" class=\"blob-num js-line-number\" data-line-number=\"6460\"></td>\n        <td id=\"LC6460\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6461\" class=\"blob-num js-line-number\" data-line-number=\"6461\"></td>\n        <td id=\"LC6461\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6462\" class=\"blob-num js-line-number\" data-line-number=\"6462\"></td>\n        <td id=\"LC6462\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_writeInt32</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6463\" class=\"blob-num js-line-number\" data-line-number=\"6463\"></td>\n        <td id=\"LC6463\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6464\" class=\"blob-num js-line-number\" data-line-number=\"6464\"></td>\n        <td id=\"LC6464\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6465\" class=\"blob-num js-line-number\" data-line-number=\"6465\"></td>\n        <td id=\"LC6465\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6466\" class=\"blob-num js-line-number\" data-line-number=\"6466\"></td>\n        <td id=\"LC6466\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6467\" class=\"blob-num js-line-number\" data-line-number=\"6467\"></td>\n        <td id=\"LC6467\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to write beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6468\" class=\"blob-num js-line-number\" data-line-number=\"6468\"></td>\n        <td id=\"LC6468\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">verifsint</span>(value, <span class=\"pl-c1\">0x7fffffff</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">0x80000000</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6469\" class=\"blob-num js-line-number\" data-line-number=\"6469\"></td>\n        <td id=\"LC6469\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6470\" class=\"blob-num js-line-number\" data-line-number=\"6470\"></td>\n        <td id=\"LC6470\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6471\" class=\"blob-num js-line-number\" data-line-number=\"6471\"></td>\n        <td id=\"LC6471\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6472\" class=\"blob-num js-line-number\" data-line-number=\"6472\"></td>\n        <td id=\"LC6472\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6473\" class=\"blob-num js-line-number\" data-line-number=\"6473\"></td>\n        <td id=\"LC6473\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6474\" class=\"blob-num js-line-number\" data-line-number=\"6474\"></td>\n        <td id=\"LC6474\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6475\" class=\"blob-num js-line-number\" data-line-number=\"6475\"></td>\n        <td id=\"LC6475\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6476\" class=\"blob-num js-line-number\" data-line-number=\"6476\"></td>\n        <td id=\"LC6476\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">_writeUInt32</span>(buf, value, offset, littleEndian, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6477\" class=\"blob-num js-line-number\" data-line-number=\"6477\"></td>\n        <td id=\"LC6477\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6478\" class=\"blob-num js-line-number\" data-line-number=\"6478\"></td>\n        <td id=\"LC6478\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">_writeUInt32</span>(buf, <span class=\"pl-c1\">0xffffffff</span> <span class=\"pl-k\">+</span> value <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>, offset, littleEndian, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6479\" class=\"blob-num js-line-number\" data-line-number=\"6479\"></td>\n        <td id=\"LC6479\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6480\" class=\"blob-num js-line-number\" data-line-number=\"6480\"></td>\n        <td id=\"LC6480\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6481\" class=\"blob-num js-line-number\" data-line-number=\"6481\"></td>\n        <td id=\"LC6481\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeInt32LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6482\" class=\"blob-num js-line-number\" data-line-number=\"6482\"></td>\n        <td id=\"LC6482\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeInt32</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6483\" class=\"blob-num js-line-number\" data-line-number=\"6483\"></td>\n        <td id=\"LC6483\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6484\" class=\"blob-num js-line-number\" data-line-number=\"6484\"></td>\n        <td id=\"LC6484\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6485\" class=\"blob-num js-line-number\" data-line-number=\"6485\"></td>\n        <td id=\"LC6485\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeInt32BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6486\" class=\"blob-num js-line-number\" data-line-number=\"6486\"></td>\n        <td id=\"LC6486\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeInt32</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6487\" class=\"blob-num js-line-number\" data-line-number=\"6487\"></td>\n        <td id=\"LC6487\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6488\" class=\"blob-num js-line-number\" data-line-number=\"6488\"></td>\n        <td id=\"LC6488\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6489\" class=\"blob-num js-line-number\" data-line-number=\"6489\"></td>\n        <td id=\"LC6489\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_writeFloat</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6490\" class=\"blob-num js-line-number\" data-line-number=\"6490\"></td>\n        <td id=\"LC6490\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6491\" class=\"blob-num js-line-number\" data-line-number=\"6491\"></td>\n        <td id=\"LC6491\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6492\" class=\"blob-num js-line-number\" data-line-number=\"6492\"></td>\n        <td id=\"LC6492\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6493\" class=\"blob-num js-line-number\" data-line-number=\"6493\"></td>\n        <td id=\"LC6493\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6494\" class=\"blob-num js-line-number\" data-line-number=\"6494\"></td>\n        <td id=\"LC6494\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to write beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6495\" class=\"blob-num js-line-number\" data-line-number=\"6495\"></td>\n        <td id=\"LC6495\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">verifIEEE754</span>(value, <span class=\"pl-c1\">3.4028234663852886e+38</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">3.4028234663852886e+38</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6496\" class=\"blob-num js-line-number\" data-line-number=\"6496\"></td>\n        <td id=\"LC6496\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6497\" class=\"blob-num js-line-number\" data-line-number=\"6497\"></td>\n        <td id=\"LC6497\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6498\" class=\"blob-num js-line-number\" data-line-number=\"6498\"></td>\n        <td id=\"LC6498\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6499\" class=\"blob-num js-line-number\" data-line-number=\"6499\"></td>\n        <td id=\"LC6499\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6500\" class=\"blob-num js-line-number\" data-line-number=\"6500\"></td>\n        <td id=\"LC6500\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6501\" class=\"blob-num js-line-number\" data-line-number=\"6501\"></td>\n        <td id=\"LC6501\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6502\" class=\"blob-num js-line-number\" data-line-number=\"6502\"></td>\n        <td id=\"LC6502\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">ieee754</span>.<span class=\"pl-c1\">write</span>(buf, value, offset, littleEndian, <span class=\"pl-c1\">23</span>, <span class=\"pl-c1\">4</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6503\" class=\"blob-num js-line-number\" data-line-number=\"6503\"></td>\n        <td id=\"LC6503\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6504\" class=\"blob-num js-line-number\" data-line-number=\"6504\"></td>\n        <td id=\"LC6504\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6505\" class=\"blob-num js-line-number\" data-line-number=\"6505\"></td>\n        <td id=\"LC6505\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeFloatLE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6506\" class=\"blob-num js-line-number\" data-line-number=\"6506\"></td>\n        <td id=\"LC6506\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeFloat</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6507\" class=\"blob-num js-line-number\" data-line-number=\"6507\"></td>\n        <td id=\"LC6507\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6508\" class=\"blob-num js-line-number\" data-line-number=\"6508\"></td>\n        <td id=\"LC6508\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6509\" class=\"blob-num js-line-number\" data-line-number=\"6509\"></td>\n        <td id=\"LC6509\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeFloatBE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6510\" class=\"blob-num js-line-number\" data-line-number=\"6510\"></td>\n        <td id=\"LC6510\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeFloat</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6511\" class=\"blob-num js-line-number\" data-line-number=\"6511\"></td>\n        <td id=\"LC6511\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6512\" class=\"blob-num js-line-number\" data-line-number=\"6512\"></td>\n        <td id=\"LC6512\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6513\" class=\"blob-num js-line-number\" data-line-number=\"6513\"></td>\n        <td id=\"LC6513\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">_writeDouble</span> (<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">littleEndian</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6514\" class=\"blob-num js-line-number\" data-line-number=\"6514\"></td>\n        <td id=\"LC6514\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>noAssert) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6515\" class=\"blob-num js-line-number\" data-line-number=\"6515\"></td>\n        <td id=\"LC6515\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6516\" class=\"blob-num js-line-number\" data-line-number=\"6516\"></td>\n        <td id=\"LC6516\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> littleEndian <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing or invalid endian<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6517\" class=\"blob-num js-line-number\" data-line-number=\"6517\"></td>\n        <td id=\"LC6517\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">&amp;&amp;</span> offset <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>missing offset<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6518\" class=\"blob-num js-line-number\" data-line-number=\"6518\"></td>\n        <td id=\"LC6518\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">assert</span>(offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">7</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L6519\" class=\"blob-num js-line-number\" data-line-number=\"6519\"></td>\n        <td id=\"LC6519\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Trying to write beyond buffer length<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6520\" class=\"blob-num js-line-number\" data-line-number=\"6520\"></td>\n        <td id=\"LC6520\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">verifIEEE754</span>(value, <span class=\"pl-c1\">1.7976931348623157E+308</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1.7976931348623157E+308</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6521\" class=\"blob-num js-line-number\" data-line-number=\"6521\"></td>\n        <td id=\"LC6521\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6522\" class=\"blob-num js-line-number\" data-line-number=\"6522\"></td>\n        <td id=\"LC6522\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6523\" class=\"blob-num js-line-number\" data-line-number=\"6523\"></td>\n        <td id=\"LC6523\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6524\" class=\"blob-num js-line-number\" data-line-number=\"6524\"></td>\n        <td id=\"LC6524\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (offset <span class=\"pl-k\">&gt;=</span> len)</td>\n      </tr>\n      <tr>\n        <td id=\"L6525\" class=\"blob-num js-line-number\" data-line-number=\"6525\"></td>\n        <td id=\"LC6525\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6526\" class=\"blob-num js-line-number\" data-line-number=\"6526\"></td>\n        <td id=\"LC6526\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6527\" class=\"blob-num js-line-number\" data-line-number=\"6527\"></td>\n        <td id=\"LC6527\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">ieee754</span>.<span class=\"pl-c1\">write</span>(buf, value, offset, littleEndian, <span class=\"pl-c1\">52</span>, <span class=\"pl-c1\">8</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6528\" class=\"blob-num js-line-number\" data-line-number=\"6528\"></td>\n        <td id=\"LC6528\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6529\" class=\"blob-num js-line-number\" data-line-number=\"6529\"></td>\n        <td id=\"LC6529\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6530\" class=\"blob-num js-line-number\" data-line-number=\"6530\"></td>\n        <td id=\"LC6530\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeDoubleLE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6531\" class=\"blob-num js-line-number\" data-line-number=\"6531\"></td>\n        <td id=\"LC6531\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeDouble</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">true</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6532\" class=\"blob-num js-line-number\" data-line-number=\"6532\"></td>\n        <td id=\"LC6532\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6533\" class=\"blob-num js-line-number\" data-line-number=\"6533\"></td>\n        <td id=\"LC6533\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6534\" class=\"blob-num js-line-number\" data-line-number=\"6534\"></td>\n        <td id=\"LC6534\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">writeDoubleBE</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">noAssert</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6535\" class=\"blob-num js-line-number\" data-line-number=\"6535\"></td>\n        <td id=\"LC6535\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">_writeDouble</span>(<span class=\"pl-v\">this</span>, value, offset, <span class=\"pl-c1\">false</span>, noAssert)</td>\n      </tr>\n      <tr>\n        <td id=\"L6536\" class=\"blob-num js-line-number\" data-line-number=\"6536\"></td>\n        <td id=\"LC6536\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6537\" class=\"blob-num js-line-number\" data-line-number=\"6537\"></td>\n        <td id=\"LC6537\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6538\" class=\"blob-num js-line-number\" data-line-number=\"6538\"></td>\n        <td id=\"LC6538\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">fill</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">start</span>, <span class=\"pl-smi\">end</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6539\" class=\"blob-num js-line-number\" data-line-number=\"6539\"></td>\n        <td id=\"LC6539\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>value) value <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6540\" class=\"blob-num js-line-number\" data-line-number=\"6540\"></td>\n        <td id=\"LC6540\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>start) start <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6541\" class=\"blob-num js-line-number\" data-line-number=\"6541\"></td>\n        <td id=\"LC6541\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>end) end <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6542\" class=\"blob-num js-line-number\" data-line-number=\"6542\"></td>\n        <td id=\"LC6542\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6543\" class=\"blob-num js-line-number\" data-line-number=\"6543\"></td>\n        <td id=\"LC6543\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6544\" class=\"blob-num js-line-number\" data-line-number=\"6544\"></td>\n        <td id=\"LC6544\" class=\"blob-code blob-code-inner js-file-line\">    value <span class=\"pl-k\">=</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">charCodeAt</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6545\" class=\"blob-num js-line-number\" data-line-number=\"6545\"></td>\n        <td id=\"LC6545\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6546\" class=\"blob-num js-line-number\" data-line-number=\"6546\"></td>\n        <td id=\"LC6546\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6547\" class=\"blob-num js-line-number\" data-line-number=\"6547\"></td>\n        <td id=\"LC6547\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-c1\">isNaN</span>(value), <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value is not a number<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6548\" class=\"blob-num js-line-number\" data-line-number=\"6548\"></td>\n        <td id=\"LC6548\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(end <span class=\"pl-k\">&gt;=</span> start, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>end &lt; start<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6549\" class=\"blob-num js-line-number\" data-line-number=\"6549\"></td>\n        <td id=\"LC6549\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6550\" class=\"blob-num js-line-number\" data-line-number=\"6550\"></td>\n        <td id=\"LC6550\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (end <span class=\"pl-k\">===</span> start) <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6551\" class=\"blob-num js-line-number\" data-line-number=\"6551\"></td>\n        <td id=\"LC6551\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">return</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6552\" class=\"blob-num js-line-number\" data-line-number=\"6552\"></td>\n        <td id=\"LC6552\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6553\" class=\"blob-num js-line-number\" data-line-number=\"6553\"></td>\n        <td id=\"LC6553\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(start <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> start <span class=\"pl-k\">&lt;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>start out of bounds<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6554\" class=\"blob-num js-line-number\" data-line-number=\"6554\"></td>\n        <td id=\"LC6554\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(end <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> end <span class=\"pl-k\">&lt;=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>end out of bounds<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6555\" class=\"blob-num js-line-number\" data-line-number=\"6555\"></td>\n        <td id=\"LC6555\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6556\" class=\"blob-num js-line-number\" data-line-number=\"6556\"></td>\n        <td id=\"LC6556\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> start; i <span class=\"pl-k\">&lt;</span> end; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6557\" class=\"blob-num js-line-number\" data-line-number=\"6557\"></td>\n        <td id=\"LC6557\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>[i] <span class=\"pl-k\">=</span> value</td>\n      </tr>\n      <tr>\n        <td id=\"L6558\" class=\"blob-num js-line-number\" data-line-number=\"6558\"></td>\n        <td id=\"LC6558\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6559\" class=\"blob-num js-line-number\" data-line-number=\"6559\"></td>\n        <td id=\"LC6559\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6560\" class=\"blob-num js-line-number\" data-line-number=\"6560\"></td>\n        <td id=\"LC6560\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6561\" class=\"blob-num js-line-number\" data-line-number=\"6561\"></td>\n        <td id=\"LC6561\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">inspect</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> () {</td>\n      </tr>\n      <tr>\n        <td id=\"L6562\" class=\"blob-num js-line-number\" data-line-number=\"6562\"></td>\n        <td id=\"LC6562\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> out <span class=\"pl-k\">=</span> []</td>\n      </tr>\n      <tr>\n        <td id=\"L6563\" class=\"blob-num js-line-number\" data-line-number=\"6563\"></td>\n        <td id=\"LC6563\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6564\" class=\"blob-num js-line-number\" data-line-number=\"6564\"></td>\n        <td id=\"LC6564\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> len; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6565\" class=\"blob-num js-line-number\" data-line-number=\"6565\"></td>\n        <td id=\"LC6565\" class=\"blob-code blob-code-inner js-file-line\">    out[i] <span class=\"pl-k\">=</span> <span class=\"pl-en\">toHex</span>(<span class=\"pl-v\">this</span>[i])</td>\n      </tr>\n      <tr>\n        <td id=\"L6566\" class=\"blob-num js-line-number\" data-line-number=\"6566\"></td>\n        <td id=\"LC6566\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (i <span class=\"pl-k\">===</span> <span class=\"pl-c1\">exports</span>.<span class=\"pl-c1\">INSPECT_MAX_BYTES</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6567\" class=\"blob-num js-line-number\" data-line-number=\"6567\"></td>\n        <td id=\"LC6567\" class=\"blob-code blob-code-inner js-file-line\">      out[i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>] <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>...<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6568\" class=\"blob-num js-line-number\" data-line-number=\"6568\"></td>\n        <td id=\"LC6568\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6569\" class=\"blob-num js-line-number\" data-line-number=\"6569\"></td>\n        <td id=\"LC6569\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L6570\" class=\"blob-num js-line-number\" data-line-number=\"6570\"></td>\n        <td id=\"LC6570\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6571\" class=\"blob-num js-line-number\" data-line-number=\"6571\"></td>\n        <td id=\"LC6571\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;Buffer <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">out</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&gt;<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6572\" class=\"blob-num js-line-number\" data-line-number=\"6572\"></td>\n        <td id=\"LC6572\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6573\" class=\"blob-num js-line-number\" data-line-number=\"6573\"></td>\n        <td id=\"LC6573\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6574\" class=\"blob-num js-line-number\" data-line-number=\"6574\"></td>\n        <td id=\"LC6574\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6575\" class=\"blob-num js-line-number\" data-line-number=\"6575\"></td>\n        <td id=\"LC6575\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toArrayBuffer</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> () {</td>\n      </tr>\n      <tr>\n        <td id=\"L6576\" class=\"blob-num js-line-number\" data-line-number=\"6576\"></td>\n        <td id=\"LC6576\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> Uint8Array <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6577\" class=\"blob-num js-line-number\" data-line-number=\"6577\"></td>\n        <td id=\"LC6577\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">Buffer</span>.<span class=\"pl-smi\">_useTypedArrays</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6578\" class=\"blob-num js-line-number\" data-line-number=\"6578\"></td>\n        <td id=\"LC6578\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> (<span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(<span class=\"pl-v\">this</span>)).<span class=\"pl-smi\">buffer</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6579\" class=\"blob-num js-line-number\" data-line-number=\"6579\"></td>\n        <td id=\"LC6579\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6580\" class=\"blob-num js-line-number\" data-line-number=\"6580\"></td>\n        <td id=\"LC6580\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> buf <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Uint8Array</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">length</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6581\" class=\"blob-num js-line-number\" data-line-number=\"6581\"></td>\n        <td id=\"LC6581\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">&lt;</span> len; i <span class=\"pl-k\">+=</span> <span class=\"pl-c1\">1</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6582\" class=\"blob-num js-line-number\" data-line-number=\"6582\"></td>\n        <td id=\"LC6582\" class=\"blob-code blob-code-inner js-file-line\">        buf[i] <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>[i]</td>\n      </tr>\n      <tr>\n        <td id=\"L6583\" class=\"blob-num js-line-number\" data-line-number=\"6583\"></td>\n        <td id=\"LC6583\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-smi\">buffer</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6584\" class=\"blob-num js-line-number\" data-line-number=\"6584\"></td>\n        <td id=\"LC6584\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L6585\" class=\"blob-num js-line-number\" data-line-number=\"6585\"></td>\n        <td id=\"LC6585\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6586\" class=\"blob-num js-line-number\" data-line-number=\"6586\"></td>\n        <td id=\"LC6586\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Buffer.toArrayBuffer not supported in this browser<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6587\" class=\"blob-num js-line-number\" data-line-number=\"6587\"></td>\n        <td id=\"LC6587\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6588\" class=\"blob-num js-line-number\" data-line-number=\"6588\"></td>\n        <td id=\"LC6588\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6589\" class=\"blob-num js-line-number\" data-line-number=\"6589\"></td>\n        <td id=\"LC6589\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6590\" class=\"blob-num js-line-number\" data-line-number=\"6590\"></td>\n        <td id=\"LC6590\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6591\" class=\"blob-num js-line-number\" data-line-number=\"6591\"></td>\n        <td id=\"LC6591\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">stringtrim</span> (<span class=\"pl-smi\">str</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6592\" class=\"blob-num js-line-number\" data-line-number=\"6592\"></td>\n        <td id=\"LC6592\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">str</span>.<span class=\"pl-smi\">trim</span>) <span class=\"pl-k\">return</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-en\">trim</span>()</td>\n      </tr>\n      <tr>\n        <td id=\"L6593\" class=\"blob-num js-line-number\" data-line-number=\"6593\"></td>\n        <td id=\"LC6593\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">+</span><span class=\"pl-k\">|</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">+</span><span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6594\" class=\"blob-num js-line-number\" data-line-number=\"6594\"></td>\n        <td id=\"LC6594\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6595\" class=\"blob-num js-line-number\" data-line-number=\"6595\"></td>\n        <td id=\"LC6595\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6596\" class=\"blob-num js-line-number\" data-line-number=\"6596\"></td>\n        <td id=\"LC6596\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">BP</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">prototype</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6597\" class=\"blob-num js-line-number\" data-line-number=\"6597\"></td>\n        <td id=\"LC6597\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6598\" class=\"blob-num js-line-number\" data-line-number=\"6598\"></td>\n        <td id=\"LC6598\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6599\" class=\"blob-num js-line-number\" data-line-number=\"6599\"></td>\n        <td id=\"LC6599\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">_augment</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">arr</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6600\" class=\"blob-num js-line-number\" data-line-number=\"6600\"></td>\n        <td id=\"LC6600\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">_isBuffer</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6601\" class=\"blob-num js-line-number\" data-line-number=\"6601\"></td>\n        <td id=\"LC6601\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6602\" class=\"blob-num js-line-number\" data-line-number=\"6602\"></td>\n        <td id=\"LC6602\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">_get</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">get</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6603\" class=\"blob-num js-line-number\" data-line-number=\"6603\"></td>\n        <td id=\"LC6603\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">_set</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">set</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6604\" class=\"blob-num js-line-number\" data-line-number=\"6604\"></td>\n        <td id=\"LC6604\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6605\" class=\"blob-num js-line-number\" data-line-number=\"6605\"></td>\n        <td id=\"LC6605\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">get</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">get</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6606\" class=\"blob-num js-line-number\" data-line-number=\"6606\"></td>\n        <td id=\"LC6606\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">set</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">set</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6607\" class=\"blob-num js-line-number\" data-line-number=\"6607\"></td>\n        <td id=\"LC6607\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6608\" class=\"blob-num js-line-number\" data-line-number=\"6608\"></td>\n        <td id=\"LC6608\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">write</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">write</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6609\" class=\"blob-num js-line-number\" data-line-number=\"6609\"></td>\n        <td id=\"LC6609\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">toString</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6610\" class=\"blob-num js-line-number\" data-line-number=\"6610\"></td>\n        <td id=\"LC6610\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">toLocaleString</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">toString</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6611\" class=\"blob-num js-line-number\" data-line-number=\"6611\"></td>\n        <td id=\"LC6611\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">toJSON</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">toJSON</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6612\" class=\"blob-num js-line-number\" data-line-number=\"6612\"></td>\n        <td id=\"LC6612\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">copy</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">copy</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6613\" class=\"blob-num js-line-number\" data-line-number=\"6613\"></td>\n        <td id=\"LC6613\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">slice</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">slice</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6614\" class=\"blob-num js-line-number\" data-line-number=\"6614\"></td>\n        <td id=\"LC6614\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readUInt8</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readUInt8</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6615\" class=\"blob-num js-line-number\" data-line-number=\"6615\"></td>\n        <td id=\"LC6615\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readUInt16LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readUInt16LE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6616\" class=\"blob-num js-line-number\" data-line-number=\"6616\"></td>\n        <td id=\"LC6616\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readUInt16BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readUInt16BE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6617\" class=\"blob-num js-line-number\" data-line-number=\"6617\"></td>\n        <td id=\"LC6617\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readUInt32LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readUInt32LE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6618\" class=\"blob-num js-line-number\" data-line-number=\"6618\"></td>\n        <td id=\"LC6618\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readUInt32BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readUInt32BE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6619\" class=\"blob-num js-line-number\" data-line-number=\"6619\"></td>\n        <td id=\"LC6619\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readInt8</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readInt8</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6620\" class=\"blob-num js-line-number\" data-line-number=\"6620\"></td>\n        <td id=\"LC6620\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readInt16LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readInt16LE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6621\" class=\"blob-num js-line-number\" data-line-number=\"6621\"></td>\n        <td id=\"LC6621\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readInt16BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readInt16BE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6622\" class=\"blob-num js-line-number\" data-line-number=\"6622\"></td>\n        <td id=\"LC6622\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readInt32LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readInt32LE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6623\" class=\"blob-num js-line-number\" data-line-number=\"6623\"></td>\n        <td id=\"LC6623\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readInt32BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readInt32BE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6624\" class=\"blob-num js-line-number\" data-line-number=\"6624\"></td>\n        <td id=\"LC6624\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readFloatLE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readFloatLE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6625\" class=\"blob-num js-line-number\" data-line-number=\"6625\"></td>\n        <td id=\"LC6625\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readFloatBE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readFloatBE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6626\" class=\"blob-num js-line-number\" data-line-number=\"6626\"></td>\n        <td id=\"LC6626\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readDoubleLE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readDoubleLE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6627\" class=\"blob-num js-line-number\" data-line-number=\"6627\"></td>\n        <td id=\"LC6627\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">readDoubleBE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">readDoubleBE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6628\" class=\"blob-num js-line-number\" data-line-number=\"6628\"></td>\n        <td id=\"LC6628\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeUInt8</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeUInt8</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6629\" class=\"blob-num js-line-number\" data-line-number=\"6629\"></td>\n        <td id=\"LC6629\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeUInt16LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeUInt16LE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6630\" class=\"blob-num js-line-number\" data-line-number=\"6630\"></td>\n        <td id=\"LC6630\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeUInt16BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeUInt16BE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6631\" class=\"blob-num js-line-number\" data-line-number=\"6631\"></td>\n        <td id=\"LC6631\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeUInt32LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeUInt32LE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6632\" class=\"blob-num js-line-number\" data-line-number=\"6632\"></td>\n        <td id=\"LC6632\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeUInt32BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeUInt32BE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6633\" class=\"blob-num js-line-number\" data-line-number=\"6633\"></td>\n        <td id=\"LC6633\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeInt8</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeInt8</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6634\" class=\"blob-num js-line-number\" data-line-number=\"6634\"></td>\n        <td id=\"LC6634\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeInt16LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeInt16LE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6635\" class=\"blob-num js-line-number\" data-line-number=\"6635\"></td>\n        <td id=\"LC6635\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeInt16BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeInt16BE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6636\" class=\"blob-num js-line-number\" data-line-number=\"6636\"></td>\n        <td id=\"LC6636\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeInt32LE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeInt32LE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6637\" class=\"blob-num js-line-number\" data-line-number=\"6637\"></td>\n        <td id=\"LC6637\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeInt32BE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeInt32BE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6638\" class=\"blob-num js-line-number\" data-line-number=\"6638\"></td>\n        <td id=\"LC6638\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeFloatLE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeFloatLE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6639\" class=\"blob-num js-line-number\" data-line-number=\"6639\"></td>\n        <td id=\"LC6639\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeFloatBE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeFloatBE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6640\" class=\"blob-num js-line-number\" data-line-number=\"6640\"></td>\n        <td id=\"LC6640\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeDoubleLE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeDoubleLE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6641\" class=\"blob-num js-line-number\" data-line-number=\"6641\"></td>\n        <td id=\"LC6641\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">writeDoubleBE</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">writeDoubleBE</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6642\" class=\"blob-num js-line-number\" data-line-number=\"6642\"></td>\n        <td id=\"LC6642\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">fill</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">fill</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6643\" class=\"blob-num js-line-number\" data-line-number=\"6643\"></td>\n        <td id=\"LC6643\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">inspect</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">inspect</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6644\" class=\"blob-num js-line-number\" data-line-number=\"6644\"></td>\n        <td id=\"LC6644\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">arr</span>.<span class=\"pl-smi\">toArrayBuffer</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">BP</span>.<span class=\"pl-smi\">toArrayBuffer</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6645\" class=\"blob-num js-line-number\" data-line-number=\"6645\"></td>\n        <td id=\"LC6645\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6646\" class=\"blob-num js-line-number\" data-line-number=\"6646\"></td>\n        <td id=\"LC6646\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> arr</td>\n      </tr>\n      <tr>\n        <td id=\"L6647\" class=\"blob-num js-line-number\" data-line-number=\"6647\"></td>\n        <td id=\"LC6647\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6648\" class=\"blob-num js-line-number\" data-line-number=\"6648\"></td>\n        <td id=\"LC6648\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6649\" class=\"blob-num js-line-number\" data-line-number=\"6649\"></td>\n        <td id=\"LC6649\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">clamp</span> (<span class=\"pl-smi\">index</span>, <span class=\"pl-smi\">len</span>, <span class=\"pl-smi\">defaultValue</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6650\" class=\"blob-num js-line-number\" data-line-number=\"6650\"></td>\n        <td id=\"LC6650\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> index <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span> defaultValue</td>\n      </tr>\n      <tr>\n        <td id=\"L6651\" class=\"blob-num js-line-number\" data-line-number=\"6651\"></td>\n        <td id=\"LC6651\" class=\"blob-code blob-code-inner js-file-line\">  index <span class=\"pl-k\">=</span> <span class=\"pl-k\">~~</span>index;  <span class=\"pl-c\">// Coerce to integer.</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6652\" class=\"blob-num js-line-number\" data-line-number=\"6652\"></td>\n        <td id=\"LC6652\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (index <span class=\"pl-k\">&gt;=</span> len) <span class=\"pl-k\">return</span> len</td>\n      </tr>\n      <tr>\n        <td id=\"L6653\" class=\"blob-num js-line-number\" data-line-number=\"6653\"></td>\n        <td id=\"LC6653\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (index <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">return</span> index</td>\n      </tr>\n      <tr>\n        <td id=\"L6654\" class=\"blob-num js-line-number\" data-line-number=\"6654\"></td>\n        <td id=\"LC6654\" class=\"blob-code blob-code-inner js-file-line\">  index <span class=\"pl-k\">+=</span> len</td>\n      </tr>\n      <tr>\n        <td id=\"L6655\" class=\"blob-num js-line-number\" data-line-number=\"6655\"></td>\n        <td id=\"LC6655\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (index <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">return</span> index</td>\n      </tr>\n      <tr>\n        <td id=\"L6656\" class=\"blob-num js-line-number\" data-line-number=\"6656\"></td>\n        <td id=\"LC6656\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6657\" class=\"blob-num js-line-number\" data-line-number=\"6657\"></td>\n        <td id=\"LC6657\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6658\" class=\"blob-num js-line-number\" data-line-number=\"6658\"></td>\n        <td id=\"LC6658\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6659\" class=\"blob-num js-line-number\" data-line-number=\"6659\"></td>\n        <td id=\"LC6659\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">coerce</span> (<span class=\"pl-smi\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6660\" class=\"blob-num js-line-number\" data-line-number=\"6660\"></td>\n        <td id=\"LC6660\" class=\"blob-code blob-code-inner js-file-line\">  length <span class=\"pl-k\">=</span> <span class=\"pl-k\">~~</span><span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">ceil</span>(<span class=\"pl-k\">+</span>length)</td>\n      </tr>\n      <tr>\n        <td id=\"L6661\" class=\"blob-num js-line-number\" data-line-number=\"6661\"></td>\n        <td id=\"LC6661\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> length <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">:</span> length</td>\n      </tr>\n      <tr>\n        <td id=\"L6662\" class=\"blob-num js-line-number\" data-line-number=\"6662\"></td>\n        <td id=\"LC6662\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6663\" class=\"blob-num js-line-number\" data-line-number=\"6663\"></td>\n        <td id=\"LC6663\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6664\" class=\"blob-num js-line-number\" data-line-number=\"6664\"></td>\n        <td id=\"LC6664\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isArray</span> (<span class=\"pl-smi\">subject</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6665\" class=\"blob-num js-line-number\" data-line-number=\"6665\"></td>\n        <td id=\"LC6665\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (<span class=\"pl-c1\">Array</span>.<span class=\"pl-smi\">isArray</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">subject</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6666\" class=\"blob-num js-line-number\" data-line-number=\"6666\"></td>\n        <td id=\"LC6666\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>.<span class=\"pl-c1\">call</span>(subject) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Array]<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6667\" class=\"blob-num js-line-number\" data-line-number=\"6667\"></td>\n        <td id=\"LC6667\" class=\"blob-code blob-code-inner js-file-line\">  })(subject)</td>\n      </tr>\n      <tr>\n        <td id=\"L6668\" class=\"blob-num js-line-number\" data-line-number=\"6668\"></td>\n        <td id=\"LC6668\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6669\" class=\"blob-num js-line-number\" data-line-number=\"6669\"></td>\n        <td id=\"LC6669\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6670\" class=\"blob-num js-line-number\" data-line-number=\"6670\"></td>\n        <td id=\"LC6670\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isArrayish</span> (<span class=\"pl-smi\">subject</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6671\" class=\"blob-num js-line-number\" data-line-number=\"6671\"></td>\n        <td id=\"LC6671\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">isArray</span>(subject) <span class=\"pl-k\">||</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">isBuffer</span>(subject) <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6672\" class=\"blob-num js-line-number\" data-line-number=\"6672\"></td>\n        <td id=\"LC6672\" class=\"blob-code blob-code-inner js-file-line\">      subject <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> subject <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6673\" class=\"blob-num js-line-number\" data-line-number=\"6673\"></td>\n        <td id=\"LC6673\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">subject</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6674\" class=\"blob-num js-line-number\" data-line-number=\"6674\"></td>\n        <td id=\"LC6674\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6675\" class=\"blob-num js-line-number\" data-line-number=\"6675\"></td>\n        <td id=\"LC6675\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6676\" class=\"blob-num js-line-number\" data-line-number=\"6676\"></td>\n        <td id=\"LC6676\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">toHex</span> (<span class=\"pl-smi\">n</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6677\" class=\"blob-num js-line-number\" data-line-number=\"6677\"></td>\n        <td id=\"LC6677\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (n <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">16</span>) <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>0<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">n</span>.<span class=\"pl-c1\">toString</span>(<span class=\"pl-c1\">16</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6678\" class=\"blob-num js-line-number\" data-line-number=\"6678\"></td>\n        <td id=\"LC6678\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">n</span>.<span class=\"pl-c1\">toString</span>(<span class=\"pl-c1\">16</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6679\" class=\"blob-num js-line-number\" data-line-number=\"6679\"></td>\n        <td id=\"LC6679\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6680\" class=\"blob-num js-line-number\" data-line-number=\"6680\"></td>\n        <td id=\"LC6680\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6681\" class=\"blob-num js-line-number\" data-line-number=\"6681\"></td>\n        <td id=\"LC6681\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">utf8ToBytes</span> (<span class=\"pl-smi\">str</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6682\" class=\"blob-num js-line-number\" data-line-number=\"6682\"></td>\n        <td id=\"LC6682\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> byteArray <span class=\"pl-k\">=</span> []</td>\n      </tr>\n      <tr>\n        <td id=\"L6683\" class=\"blob-num js-line-number\" data-line-number=\"6683\"></td>\n        <td id=\"LC6683\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6684\" class=\"blob-num js-line-number\" data-line-number=\"6684\"></td>\n        <td id=\"LC6684\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> b <span class=\"pl-k\">=</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">charCodeAt</span>(i)</td>\n      </tr>\n      <tr>\n        <td id=\"L6685\" class=\"blob-num js-line-number\" data-line-number=\"6685\"></td>\n        <td id=\"LC6685\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (b <span class=\"pl-k\">&lt;=</span> <span class=\"pl-c1\">0x7F</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6686\" class=\"blob-num js-line-number\" data-line-number=\"6686\"></td>\n        <td id=\"LC6686\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">byteArray</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">charCodeAt</span>(i))</td>\n      </tr>\n      <tr>\n        <td id=\"L6687\" class=\"blob-num js-line-number\" data-line-number=\"6687\"></td>\n        <td id=\"LC6687\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6688\" class=\"blob-num js-line-number\" data-line-number=\"6688\"></td>\n        <td id=\"LC6688\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> start <span class=\"pl-k\">=</span> i</td>\n      </tr>\n      <tr>\n        <td id=\"L6689\" class=\"blob-num js-line-number\" data-line-number=\"6689\"></td>\n        <td id=\"LC6689\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (b <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0xD800</span> <span class=\"pl-k\">&amp;&amp;</span> b <span class=\"pl-k\">&lt;=</span> <span class=\"pl-c1\">0xDFFF</span>) i<span class=\"pl-k\">++</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6690\" class=\"blob-num js-line-number\" data-line-number=\"6690\"></td>\n        <td id=\"LC6690\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> h <span class=\"pl-k\">=</span> <span class=\"pl-c1\">encodeURIComponent</span>(<span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">slice</span>(start, i<span class=\"pl-k\">+</span><span class=\"pl-c1\">1</span>)).<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6691\" class=\"blob-num js-line-number\" data-line-number=\"6691\"></td>\n        <td id=\"LC6691\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; j <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">h</span>.<span class=\"pl-c1\">length</span>; j<span class=\"pl-k\">++</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6692\" class=\"blob-num js-line-number\" data-line-number=\"6692\"></td>\n        <td id=\"LC6692\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">byteArray</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-c1\">parseInt</span>(h[j], <span class=\"pl-c1\">16</span>))</td>\n      </tr>\n      <tr>\n        <td id=\"L6693\" class=\"blob-num js-line-number\" data-line-number=\"6693\"></td>\n        <td id=\"LC6693\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L6694\" class=\"blob-num js-line-number\" data-line-number=\"6694\"></td>\n        <td id=\"LC6694\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6695\" class=\"blob-num js-line-number\" data-line-number=\"6695\"></td>\n        <td id=\"LC6695\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> byteArray</td>\n      </tr>\n      <tr>\n        <td id=\"L6696\" class=\"blob-num js-line-number\" data-line-number=\"6696\"></td>\n        <td id=\"LC6696\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6697\" class=\"blob-num js-line-number\" data-line-number=\"6697\"></td>\n        <td id=\"LC6697\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6698\" class=\"blob-num js-line-number\" data-line-number=\"6698\"></td>\n        <td id=\"LC6698\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">asciiToBytes</span> (<span class=\"pl-smi\">str</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6699\" class=\"blob-num js-line-number\" data-line-number=\"6699\"></td>\n        <td id=\"LC6699\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> byteArray <span class=\"pl-k\">=</span> []</td>\n      </tr>\n      <tr>\n        <td id=\"L6700\" class=\"blob-num js-line-number\" data-line-number=\"6700\"></td>\n        <td id=\"LC6700\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6701\" class=\"blob-num js-line-number\" data-line-number=\"6701\"></td>\n        <td id=\"LC6701\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">byteArray</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">charCodeAt</span>(i) <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFF</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6702\" class=\"blob-num js-line-number\" data-line-number=\"6702\"></td>\n        <td id=\"LC6702\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6703\" class=\"blob-num js-line-number\" data-line-number=\"6703\"></td>\n        <td id=\"LC6703\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> byteArray</td>\n      </tr>\n      <tr>\n        <td id=\"L6704\" class=\"blob-num js-line-number\" data-line-number=\"6704\"></td>\n        <td id=\"LC6704\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6705\" class=\"blob-num js-line-number\" data-line-number=\"6705\"></td>\n        <td id=\"LC6705\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6706\" class=\"blob-num js-line-number\" data-line-number=\"6706\"></td>\n        <td id=\"LC6706\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">utf16leToBytes</span> (<span class=\"pl-smi\">str</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6707\" class=\"blob-num js-line-number\" data-line-number=\"6707\"></td>\n        <td id=\"LC6707\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> c, hi, lo</td>\n      </tr>\n      <tr>\n        <td id=\"L6708\" class=\"blob-num js-line-number\" data-line-number=\"6708\"></td>\n        <td id=\"LC6708\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> byteArray <span class=\"pl-k\">=</span> []</td>\n      </tr>\n      <tr>\n        <td id=\"L6709\" class=\"blob-num js-line-number\" data-line-number=\"6709\"></td>\n        <td id=\"LC6709\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6710\" class=\"blob-num js-line-number\" data-line-number=\"6710\"></td>\n        <td id=\"LC6710\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">charCodeAt</span>(i)</td>\n      </tr>\n      <tr>\n        <td id=\"L6711\" class=\"blob-num js-line-number\" data-line-number=\"6711\"></td>\n        <td id=\"LC6711\" class=\"blob-code blob-code-inner js-file-line\">    hi <span class=\"pl-k\">=</span> c <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">8</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6712\" class=\"blob-num js-line-number\" data-line-number=\"6712\"></td>\n        <td id=\"LC6712\" class=\"blob-code blob-code-inner js-file-line\">    lo <span class=\"pl-k\">=</span> c <span class=\"pl-k\">%</span> <span class=\"pl-c1\">256</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6713\" class=\"blob-num js-line-number\" data-line-number=\"6713\"></td>\n        <td id=\"LC6713\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">byteArray</span>.<span class=\"pl-c1\">push</span>(lo)</td>\n      </tr>\n      <tr>\n        <td id=\"L6714\" class=\"blob-num js-line-number\" data-line-number=\"6714\"></td>\n        <td id=\"LC6714\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">byteArray</span>.<span class=\"pl-c1\">push</span>(hi)</td>\n      </tr>\n      <tr>\n        <td id=\"L6715\" class=\"blob-num js-line-number\" data-line-number=\"6715\"></td>\n        <td id=\"LC6715\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6716\" class=\"blob-num js-line-number\" data-line-number=\"6716\"></td>\n        <td id=\"LC6716\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6717\" class=\"blob-num js-line-number\" data-line-number=\"6717\"></td>\n        <td id=\"LC6717\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> byteArray</td>\n      </tr>\n      <tr>\n        <td id=\"L6718\" class=\"blob-num js-line-number\" data-line-number=\"6718\"></td>\n        <td id=\"LC6718\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6719\" class=\"blob-num js-line-number\" data-line-number=\"6719\"></td>\n        <td id=\"LC6719\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6720\" class=\"blob-num js-line-number\" data-line-number=\"6720\"></td>\n        <td id=\"LC6720\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">base64ToBytes</span> (<span class=\"pl-smi\">str</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6721\" class=\"blob-num js-line-number\" data-line-number=\"6721\"></td>\n        <td id=\"LC6721\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">base64</span>.<span class=\"pl-en\">toByteArray</span>(str)</td>\n      </tr>\n      <tr>\n        <td id=\"L6722\" class=\"blob-num js-line-number\" data-line-number=\"6722\"></td>\n        <td id=\"LC6722\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6723\" class=\"blob-num js-line-number\" data-line-number=\"6723\"></td>\n        <td id=\"LC6723\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6724\" class=\"blob-num js-line-number\" data-line-number=\"6724\"></td>\n        <td id=\"LC6724\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">blitBuffer</span> (<span class=\"pl-smi\">src</span>, <span class=\"pl-smi\">dst</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6725\" class=\"blob-num js-line-number\" data-line-number=\"6725\"></td>\n        <td id=\"LC6725\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> pos</td>\n      </tr>\n      <tr>\n        <td id=\"L6726\" class=\"blob-num js-line-number\" data-line-number=\"6726\"></td>\n        <td id=\"LC6726\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> length; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6727\" class=\"blob-num js-line-number\" data-line-number=\"6727\"></td>\n        <td id=\"LC6727\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> ((i <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">&gt;=</span> <span class=\"pl-smi\">dst</span>.<span class=\"pl-c1\">length</span>) <span class=\"pl-k\">||</span> (i <span class=\"pl-k\">&gt;=</span> <span class=\"pl-smi\">src</span>.<span class=\"pl-c1\">length</span>))</td>\n      </tr>\n      <tr>\n        <td id=\"L6728\" class=\"blob-num js-line-number\" data-line-number=\"6728\"></td>\n        <td id=\"LC6728\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6729\" class=\"blob-num js-line-number\" data-line-number=\"6729\"></td>\n        <td id=\"LC6729\" class=\"blob-code blob-code-inner js-file-line\">    dst[i <span class=\"pl-k\">+</span> offset] <span class=\"pl-k\">=</span> src[i]</td>\n      </tr>\n      <tr>\n        <td id=\"L6730\" class=\"blob-num js-line-number\" data-line-number=\"6730\"></td>\n        <td id=\"LC6730\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6731\" class=\"blob-num js-line-number\" data-line-number=\"6731\"></td>\n        <td id=\"LC6731\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> i</td>\n      </tr>\n      <tr>\n        <td id=\"L6732\" class=\"blob-num js-line-number\" data-line-number=\"6732\"></td>\n        <td id=\"LC6732\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6733\" class=\"blob-num js-line-number\" data-line-number=\"6733\"></td>\n        <td id=\"LC6733\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6734\" class=\"blob-num js-line-number\" data-line-number=\"6734\"></td>\n        <td id=\"LC6734\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">decodeUtf8Char</span> (<span class=\"pl-smi\">str</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6735\" class=\"blob-num js-line-number\" data-line-number=\"6735\"></td>\n        <td id=\"LC6735\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6736\" class=\"blob-num js-line-number\" data-line-number=\"6736\"></td>\n        <td id=\"LC6736\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">decodeURIComponent</span>(str)</td>\n      </tr>\n      <tr>\n        <td id=\"L6737\" class=\"blob-num js-line-number\" data-line-number=\"6737\"></td>\n        <td id=\"LC6737\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">catch</span> (err) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6738\" class=\"blob-num js-line-number\" data-line-number=\"6738\"></td>\n        <td id=\"LC6738\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">String</span>.<span class=\"pl-c1\">fromCharCode</span>(<span class=\"pl-c1\">0xFFFD</span>) <span class=\"pl-c\">// UTF 8 invalid char</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6739\" class=\"blob-num js-line-number\" data-line-number=\"6739\"></td>\n        <td id=\"LC6739\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6740\" class=\"blob-num js-line-number\" data-line-number=\"6740\"></td>\n        <td id=\"LC6740\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6741\" class=\"blob-num js-line-number\" data-line-number=\"6741\"></td>\n        <td id=\"LC6741\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6742\" class=\"blob-num js-line-number\" data-line-number=\"6742\"></td>\n        <td id=\"LC6742\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6743\" class=\"blob-num js-line-number\" data-line-number=\"6743\"></td>\n        <td id=\"LC6743\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">verifuint</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">max</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6744\" class=\"blob-num js-line-number\" data-line-number=\"6744\"></td>\n        <td id=\"LC6744\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>cannot write a non-number as a number<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6745\" class=\"blob-num js-line-number\" data-line-number=\"6745\"></td>\n        <td id=\"LC6745\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>specified a negative value for writing an unsigned value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6746\" class=\"blob-num js-line-number\" data-line-number=\"6746\"></td>\n        <td id=\"LC6746\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">&lt;=</span> max, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value is larger than maximum value for type<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6747\" class=\"blob-num js-line-number\" data-line-number=\"6747\"></td>\n        <td id=\"LC6747\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(<span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">floor</span>(value) <span class=\"pl-k\">===</span> value, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value has a fractional component<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6748\" class=\"blob-num js-line-number\" data-line-number=\"6748\"></td>\n        <td id=\"LC6748\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6749\" class=\"blob-num js-line-number\" data-line-number=\"6749\"></td>\n        <td id=\"LC6749\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6750\" class=\"blob-num js-line-number\" data-line-number=\"6750\"></td>\n        <td id=\"LC6750\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">verifsint</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">max</span>, <span class=\"pl-smi\">min</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6751\" class=\"blob-num js-line-number\" data-line-number=\"6751\"></td>\n        <td id=\"LC6751\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>cannot write a non-number as a number<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6752\" class=\"blob-num js-line-number\" data-line-number=\"6752\"></td>\n        <td id=\"LC6752\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">&lt;=</span> max, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value larger than maximum allowed value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6753\" class=\"blob-num js-line-number\" data-line-number=\"6753\"></td>\n        <td id=\"LC6753\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">&gt;=</span> min, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value smaller than minimum allowed value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6754\" class=\"blob-num js-line-number\" data-line-number=\"6754\"></td>\n        <td id=\"LC6754\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(<span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">floor</span>(value) <span class=\"pl-k\">===</span> value, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value has a fractional component<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6755\" class=\"blob-num js-line-number\" data-line-number=\"6755\"></td>\n        <td id=\"LC6755\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6756\" class=\"blob-num js-line-number\" data-line-number=\"6756\"></td>\n        <td id=\"LC6756\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6757\" class=\"blob-num js-line-number\" data-line-number=\"6757\"></td>\n        <td id=\"LC6757\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">verifIEEE754</span> (<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">max</span>, <span class=\"pl-smi\">min</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6758\" class=\"blob-num js-line-number\" data-line-number=\"6758\"></td>\n        <td id=\"LC6758\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>cannot write a non-number as a number<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6759\" class=\"blob-num js-line-number\" data-line-number=\"6759\"></td>\n        <td id=\"LC6759\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">&lt;=</span> max, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value larger than maximum allowed value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6760\" class=\"blob-num js-line-number\" data-line-number=\"6760\"></td>\n        <td id=\"LC6760\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">assert</span>(value <span class=\"pl-k\">&gt;=</span> min, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>value smaller than minimum allowed value<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6761\" class=\"blob-num js-line-number\" data-line-number=\"6761\"></td>\n        <td id=\"LC6761\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6762\" class=\"blob-num js-line-number\" data-line-number=\"6762\"></td>\n        <td id=\"LC6762\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6763\" class=\"blob-num js-line-number\" data-line-number=\"6763\"></td>\n        <td id=\"LC6763\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">assert</span> (<span class=\"pl-smi\">test</span>, <span class=\"pl-smi\">message</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6764\" class=\"blob-num js-line-number\" data-line-number=\"6764\"></td>\n        <td id=\"LC6764\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>test) <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(message <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Failed assertion<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6765\" class=\"blob-num js-line-number\" data-line-number=\"6765\"></td>\n        <td id=\"LC6765\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6766\" class=\"blob-num js-line-number\" data-line-number=\"6766\"></td>\n        <td id=\"LC6766\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6767\" class=\"blob-num js-line-number\" data-line-number=\"6767\"></td>\n        <td id=\"LC6767\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>base64-js<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">48</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>ieee754<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">49</span>}],<span class=\"pl-c1\">48</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L6768\" class=\"blob-num js-line-number\" data-line-number=\"6768\"></td>\n        <td id=\"LC6768\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> lookup <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L6769\" class=\"blob-num js-line-number\" data-line-number=\"6769\"></td>\n        <td id=\"LC6769\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6770\" class=\"blob-num js-line-number\" data-line-number=\"6770\"></td>\n        <td id=\"LC6770\" class=\"blob-code blob-code-inner js-file-line\">;(<span class=\"pl-k\">function</span> (<span class=\"pl-c1\">exports</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6771\" class=\"blob-num js-line-number\" data-line-number=\"6771\"></td>\n        <td id=\"LC6771\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>use strict<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L6772\" class=\"blob-num js-line-number\" data-line-number=\"6772\"></td>\n        <td id=\"LC6772\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6773\" class=\"blob-num js-line-number\" data-line-number=\"6773\"></td>\n        <td id=\"LC6773\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> Arr <span class=\"pl-k\">=</span> (<span class=\"pl-k\">typeof</span> Uint8Array <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6774\" class=\"blob-num js-line-number\" data-line-number=\"6774\"></td>\n        <td id=\"LC6774\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">?</span> Uint8Array</td>\n      </tr>\n      <tr>\n        <td id=\"L6775\" class=\"blob-num js-line-number\" data-line-number=\"6775\"></td>\n        <td id=\"LC6775\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">:</span> <span class=\"pl-c1\">Array</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6776\" class=\"blob-num js-line-number\" data-line-number=\"6776\"></td>\n        <td id=\"LC6776\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6777\" class=\"blob-num js-line-number\" data-line-number=\"6777\"></td>\n        <td id=\"LC6777\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">var</span> <span class=\"pl-c1\">PLUS</span>   <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>+<span class=\"pl-pds\">&#39;</span></span>.<span class=\"pl-c1\">charCodeAt</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6778\" class=\"blob-num js-line-number\" data-line-number=\"6778\"></td>\n        <td id=\"LC6778\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">var</span> <span class=\"pl-c1\">SLASH</span>  <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>.<span class=\"pl-c1\">charCodeAt</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6779\" class=\"blob-num js-line-number\" data-line-number=\"6779\"></td>\n        <td id=\"LC6779\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">var</span> <span class=\"pl-c1\">NUMBER</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>0<span class=\"pl-pds\">&#39;</span></span>.<span class=\"pl-c1\">charCodeAt</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6780\" class=\"blob-num js-line-number\" data-line-number=\"6780\"></td>\n        <td id=\"LC6780\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">var</span> <span class=\"pl-c1\">LOWER</span>  <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>a<span class=\"pl-pds\">&#39;</span></span>.<span class=\"pl-c1\">charCodeAt</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6781\" class=\"blob-num js-line-number\" data-line-number=\"6781\"></td>\n        <td id=\"LC6781\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">var</span> <span class=\"pl-c1\">UPPER</span>  <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>A<span class=\"pl-pds\">&#39;</span></span>.<span class=\"pl-c1\">charCodeAt</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6782\" class=\"blob-num js-line-number\" data-line-number=\"6782\"></td>\n        <td id=\"LC6782\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">var</span> <span class=\"pl-c1\">PLUS_URL_SAFE</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>-<span class=\"pl-pds\">&#39;</span></span>.<span class=\"pl-c1\">charCodeAt</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6783\" class=\"blob-num js-line-number\" data-line-number=\"6783\"></td>\n        <td id=\"LC6783\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">var</span> <span class=\"pl-c1\">SLASH_URL_SAFE</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>_<span class=\"pl-pds\">&#39;</span></span>.<span class=\"pl-c1\">charCodeAt</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6784\" class=\"blob-num js-line-number\" data-line-number=\"6784\"></td>\n        <td id=\"LC6784\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6785\" class=\"blob-num js-line-number\" data-line-number=\"6785\"></td>\n        <td id=\"LC6785\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">decode</span> (<span class=\"pl-smi\">elt</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6786\" class=\"blob-num js-line-number\" data-line-number=\"6786\"></td>\n        <td id=\"LC6786\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">var</span> code <span class=\"pl-k\">=</span> <span class=\"pl-smi\">elt</span>.<span class=\"pl-c1\">charCodeAt</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6787\" class=\"blob-num js-line-number\" data-line-number=\"6787\"></td>\n        <td id=\"LC6787\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (code <span class=\"pl-k\">===</span> <span class=\"pl-c1\">PLUS</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6788\" class=\"blob-num js-line-number\" data-line-number=\"6788\"></td>\n        <td id=\"LC6788\" class=\"blob-code blob-code-inner js-file-line\">\t\t    code <span class=\"pl-k\">===</span> <span class=\"pl-c1\">PLUS_URL_SAFE</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6789\" class=\"blob-num js-line-number\" data-line-number=\"6789\"></td>\n        <td id=\"LC6789\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> <span class=\"pl-c1\">62</span> <span class=\"pl-c\">// &#39;+&#39;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6790\" class=\"blob-num js-line-number\" data-line-number=\"6790\"></td>\n        <td id=\"LC6790\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (code <span class=\"pl-k\">===</span> <span class=\"pl-c1\">SLASH</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6791\" class=\"blob-num js-line-number\" data-line-number=\"6791\"></td>\n        <td id=\"LC6791\" class=\"blob-code blob-code-inner js-file-line\">\t\t    code <span class=\"pl-k\">===</span> <span class=\"pl-c1\">SLASH_URL_SAFE</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6792\" class=\"blob-num js-line-number\" data-line-number=\"6792\"></td>\n        <td id=\"LC6792\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> <span class=\"pl-c1\">63</span> <span class=\"pl-c\">// &#39;/&#39;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6793\" class=\"blob-num js-line-number\" data-line-number=\"6793\"></td>\n        <td id=\"LC6793\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (code <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">NUMBER</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6794\" class=\"blob-num js-line-number\" data-line-number=\"6794\"></td>\n        <td id=\"LC6794\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-c\">//no match</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6795\" class=\"blob-num js-line-number\" data-line-number=\"6795\"></td>\n        <td id=\"LC6795\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (code <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">NUMBER</span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">10</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6796\" class=\"blob-num js-line-number\" data-line-number=\"6796\"></td>\n        <td id=\"LC6796\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> code <span class=\"pl-k\">-</span> <span class=\"pl-c1\">NUMBER</span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">26</span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">26</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6797\" class=\"blob-num js-line-number\" data-line-number=\"6797\"></td>\n        <td id=\"LC6797\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (code <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">UPPER</span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">26</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6798\" class=\"blob-num js-line-number\" data-line-number=\"6798\"></td>\n        <td id=\"LC6798\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> code <span class=\"pl-k\">-</span> <span class=\"pl-c1\">UPPER</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6799\" class=\"blob-num js-line-number\" data-line-number=\"6799\"></td>\n        <td id=\"LC6799\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (code <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">LOWER</span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">26</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6800\" class=\"blob-num js-line-number\" data-line-number=\"6800\"></td>\n        <td id=\"LC6800\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> code <span class=\"pl-k\">-</span> <span class=\"pl-c1\">LOWER</span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">26</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6801\" class=\"blob-num js-line-number\" data-line-number=\"6801\"></td>\n        <td id=\"LC6801\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L6802\" class=\"blob-num js-line-number\" data-line-number=\"6802\"></td>\n        <td id=\"LC6802\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6803\" class=\"blob-num js-line-number\" data-line-number=\"6803\"></td>\n        <td id=\"LC6803\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">b64ToByteArray</span> (<span class=\"pl-smi\">b64</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6804\" class=\"blob-num js-line-number\" data-line-number=\"6804\"></td>\n        <td id=\"LC6804\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">var</span> i, j, l, tmp, placeHolders, arr</td>\n      </tr>\n      <tr>\n        <td id=\"L6805\" class=\"blob-num js-line-number\" data-line-number=\"6805\"></td>\n        <td id=\"LC6805\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6806\" class=\"blob-num js-line-number\" data-line-number=\"6806\"></td>\n        <td id=\"LC6806\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (<span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">%</span> <span class=\"pl-c1\">4</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6807\" class=\"blob-num js-line-number\" data-line-number=\"6807\"></td>\n        <td id=\"LC6807\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Invalid string. Length must be a multiple of 4<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6808\" class=\"blob-num js-line-number\" data-line-number=\"6808\"></td>\n        <td id=\"LC6808\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L6809\" class=\"blob-num js-line-number\" data-line-number=\"6809\"></td>\n        <td id=\"LC6809\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6810\" class=\"blob-num js-line-number\" data-line-number=\"6810\"></td>\n        <td id=\"LC6810\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6811\" class=\"blob-num js-line-number\" data-line-number=\"6811\"></td>\n        <td id=\"LC6811\" class=\"blob-code blob-code-inner js-file-line\">\t\tplaceHolders <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">===</span> <span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">charAt</span>(len <span class=\"pl-k\">-</span> <span class=\"pl-c1\">2</span>) <span class=\"pl-k\">?</span> <span class=\"pl-c1\">2</span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">===</span> <span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">charAt</span>(len <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>) <span class=\"pl-k\">?</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6812\" class=\"blob-num js-line-number\" data-line-number=\"6812\"></td>\n        <td id=\"LC6812\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6813\" class=\"blob-num js-line-number\" data-line-number=\"6813\"></td>\n        <td id=\"LC6813\" class=\"blob-code blob-code-inner js-file-line\">\t\tarr <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Arr</span>(<span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">*</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">/</span> <span class=\"pl-c1\">4</span> <span class=\"pl-k\">-</span> placeHolders)</td>\n      </tr>\n      <tr>\n        <td id=\"L6814\" class=\"blob-num js-line-number\" data-line-number=\"6814\"></td>\n        <td id=\"LC6814\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6815\" class=\"blob-num js-line-number\" data-line-number=\"6815\"></td>\n        <td id=\"LC6815\" class=\"blob-code blob-code-inner js-file-line\">\t\tl <span class=\"pl-k\">=</span> placeHolders <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">4</span> <span class=\"pl-k\">:</span> <span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6816\" class=\"blob-num js-line-number\" data-line-number=\"6816\"></td>\n        <td id=\"LC6816\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6817\" class=\"blob-num js-line-number\" data-line-number=\"6817\"></td>\n        <td id=\"LC6817\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">var</span> L <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6818\" class=\"blob-num js-line-number\" data-line-number=\"6818\"></td>\n        <td id=\"LC6818\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6819\" class=\"blob-num js-line-number\" data-line-number=\"6819\"></td>\n        <td id=\"LC6819\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">push</span> (<span class=\"pl-smi\">v</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6820\" class=\"blob-num js-line-number\" data-line-number=\"6820\"></td>\n        <td id=\"LC6820\" class=\"blob-code blob-code-inner js-file-line\">\t\t\tarr[L<span class=\"pl-k\">++</span>] <span class=\"pl-k\">=</span> v</td>\n      </tr>\n      <tr>\n        <td id=\"L6821\" class=\"blob-num js-line-number\" data-line-number=\"6821\"></td>\n        <td id=\"LC6821\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L6822\" class=\"blob-num js-line-number\" data-line-number=\"6822\"></td>\n        <td id=\"LC6822\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6823\" class=\"blob-num js-line-number\" data-line-number=\"6823\"></td>\n        <td id=\"LC6823\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> l; i <span class=\"pl-k\">+=</span> <span class=\"pl-c1\">4</span>, j <span class=\"pl-k\">+=</span> <span class=\"pl-c1\">3</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6824\" class=\"blob-num js-line-number\" data-line-number=\"6824\"></td>\n        <td id=\"LC6824\" class=\"blob-code blob-code-inner js-file-line\">\t\t\ttmp <span class=\"pl-k\">=</span> (<span class=\"pl-en\">decode</span>(<span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">charAt</span>(i)) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">18</span>) <span class=\"pl-k\">|</span> (<span class=\"pl-en\">decode</span>(<span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">charAt</span>(i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>)) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">12</span>) <span class=\"pl-k\">|</span> (<span class=\"pl-en\">decode</span>(<span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">charAt</span>(i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span>)) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">6</span>) <span class=\"pl-k\">|</span> <span class=\"pl-en\">decode</span>(<span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">charAt</span>(i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span>))</td>\n      </tr>\n      <tr>\n        <td id=\"L6825\" class=\"blob-num js-line-number\" data-line-number=\"6825\"></td>\n        <td id=\"LC6825\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-en\">push</span>((tmp <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFF0000</span>) <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">16</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6826\" class=\"blob-num js-line-number\" data-line-number=\"6826\"></td>\n        <td id=\"LC6826\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-en\">push</span>((tmp <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFF00</span>) <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">8</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6827\" class=\"blob-num js-line-number\" data-line-number=\"6827\"></td>\n        <td id=\"LC6827\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-en\">push</span>(tmp <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFF</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6828\" class=\"blob-num js-line-number\" data-line-number=\"6828\"></td>\n        <td id=\"LC6828\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L6829\" class=\"blob-num js-line-number\" data-line-number=\"6829\"></td>\n        <td id=\"LC6829\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6830\" class=\"blob-num js-line-number\" data-line-number=\"6830\"></td>\n        <td id=\"LC6830\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (placeHolders <span class=\"pl-k\">===</span> <span class=\"pl-c1\">2</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6831\" class=\"blob-num js-line-number\" data-line-number=\"6831\"></td>\n        <td id=\"LC6831\" class=\"blob-code blob-code-inner js-file-line\">\t\t\ttmp <span class=\"pl-k\">=</span> (<span class=\"pl-en\">decode</span>(<span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">charAt</span>(i)) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">2</span>) <span class=\"pl-k\">|</span> (<span class=\"pl-en\">decode</span>(<span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">charAt</span>(i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>)) <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">4</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6832\" class=\"blob-num js-line-number\" data-line-number=\"6832\"></td>\n        <td id=\"LC6832\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-en\">push</span>(tmp <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFF</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6833\" class=\"blob-num js-line-number\" data-line-number=\"6833\"></td>\n        <td id=\"LC6833\" class=\"blob-code blob-code-inner js-file-line\">\t\t} <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (placeHolders <span class=\"pl-k\">===</span> <span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6834\" class=\"blob-num js-line-number\" data-line-number=\"6834\"></td>\n        <td id=\"LC6834\" class=\"blob-code blob-code-inner js-file-line\">\t\t\ttmp <span class=\"pl-k\">=</span> (<span class=\"pl-en\">decode</span>(<span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">charAt</span>(i)) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">10</span>) <span class=\"pl-k\">|</span> (<span class=\"pl-en\">decode</span>(<span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">charAt</span>(i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>)) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">4</span>) <span class=\"pl-k\">|</span> (<span class=\"pl-en\">decode</span>(<span class=\"pl-smi\">b64</span>.<span class=\"pl-c1\">charAt</span>(i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span>)) <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">2</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6835\" class=\"blob-num js-line-number\" data-line-number=\"6835\"></td>\n        <td id=\"LC6835\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-en\">push</span>((tmp <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">8</span>) <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFF</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6836\" class=\"blob-num js-line-number\" data-line-number=\"6836\"></td>\n        <td id=\"LC6836\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-en\">push</span>(tmp <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFF</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6837\" class=\"blob-num js-line-number\" data-line-number=\"6837\"></td>\n        <td id=\"LC6837\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L6838\" class=\"blob-num js-line-number\" data-line-number=\"6838\"></td>\n        <td id=\"LC6838\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6839\" class=\"blob-num js-line-number\" data-line-number=\"6839\"></td>\n        <td id=\"LC6839\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> arr</td>\n      </tr>\n      <tr>\n        <td id=\"L6840\" class=\"blob-num js-line-number\" data-line-number=\"6840\"></td>\n        <td id=\"LC6840\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L6841\" class=\"blob-num js-line-number\" data-line-number=\"6841\"></td>\n        <td id=\"LC6841\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6842\" class=\"blob-num js-line-number\" data-line-number=\"6842\"></td>\n        <td id=\"LC6842\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">uint8ToBase64</span> (<span class=\"pl-smi\">uint8</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6843\" class=\"blob-num js-line-number\" data-line-number=\"6843\"></td>\n        <td id=\"LC6843\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">var</span> i,</td>\n      </tr>\n      <tr>\n        <td id=\"L6844\" class=\"blob-num js-line-number\" data-line-number=\"6844\"></td>\n        <td id=\"LC6844\" class=\"blob-code blob-code-inner js-file-line\">\t\t\textraBytes <span class=\"pl-k\">=</span> <span class=\"pl-smi\">uint8</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">%</span> <span class=\"pl-c1\">3</span>, <span class=\"pl-c\">// if we have 1 byte left, pad 2 bytes</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6845\" class=\"blob-num js-line-number\" data-line-number=\"6845\"></td>\n        <td id=\"LC6845\" class=\"blob-code blob-code-inner js-file-line\">\t\t\toutput <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span><span class=\"pl-pds\">&quot;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L6846\" class=\"blob-num js-line-number\" data-line-number=\"6846\"></td>\n        <td id=\"LC6846\" class=\"blob-code blob-code-inner js-file-line\">\t\t\ttemp, length</td>\n      </tr>\n      <tr>\n        <td id=\"L6847\" class=\"blob-num js-line-number\" data-line-number=\"6847\"></td>\n        <td id=\"LC6847\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6848\" class=\"blob-num js-line-number\" data-line-number=\"6848\"></td>\n        <td id=\"LC6848\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">encode</span> (<span class=\"pl-smi\">num</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6849\" class=\"blob-num js-line-number\" data-line-number=\"6849\"></td>\n        <td id=\"LC6849\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> <span class=\"pl-smi\">lookup</span>.<span class=\"pl-c1\">charAt</span>(num)</td>\n      </tr>\n      <tr>\n        <td id=\"L6850\" class=\"blob-num js-line-number\" data-line-number=\"6850\"></td>\n        <td id=\"LC6850\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L6851\" class=\"blob-num js-line-number\" data-line-number=\"6851\"></td>\n        <td id=\"LC6851\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6852\" class=\"blob-num js-line-number\" data-line-number=\"6852\"></td>\n        <td id=\"LC6852\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">tripletToBase64</span> (<span class=\"pl-smi\">num</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6853\" class=\"blob-num js-line-number\" data-line-number=\"6853\"></td>\n        <td id=\"LC6853\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> <span class=\"pl-en\">encode</span>(num <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">18</span> <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x3F</span>) <span class=\"pl-k\">+</span> <span class=\"pl-en\">encode</span>(num <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">12</span> <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x3F</span>) <span class=\"pl-k\">+</span> <span class=\"pl-en\">encode</span>(num <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">6</span> <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x3F</span>) <span class=\"pl-k\">+</span> <span class=\"pl-en\">encode</span>(num <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x3F</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6854\" class=\"blob-num js-line-number\" data-line-number=\"6854\"></td>\n        <td id=\"LC6854\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L6855\" class=\"blob-num js-line-number\" data-line-number=\"6855\"></td>\n        <td id=\"LC6855\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6856\" class=\"blob-num js-line-number\" data-line-number=\"6856\"></td>\n        <td id=\"LC6856\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">uint8</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> extraBytes; i <span class=\"pl-k\">&lt;</span> length; i <span class=\"pl-k\">+=</span> <span class=\"pl-c1\">3</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6857\" class=\"blob-num js-line-number\" data-line-number=\"6857\"></td>\n        <td id=\"LC6857\" class=\"blob-code blob-code-inner js-file-line\">\t\t\ttemp <span class=\"pl-k\">=</span> (uint8[i] <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">16</span>) <span class=\"pl-k\">+</span> (uint8[i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>] <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">8</span>) <span class=\"pl-k\">+</span> (uint8[i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span>])</td>\n      </tr>\n      <tr>\n        <td id=\"L6858\" class=\"blob-num js-line-number\" data-line-number=\"6858\"></td>\n        <td id=\"LC6858\" class=\"blob-code blob-code-inner js-file-line\">\t\t\toutput <span class=\"pl-k\">+=</span> <span class=\"pl-en\">tripletToBase64</span>(temp)</td>\n      </tr>\n      <tr>\n        <td id=\"L6859\" class=\"blob-num js-line-number\" data-line-number=\"6859\"></td>\n        <td id=\"LC6859\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L6860\" class=\"blob-num js-line-number\" data-line-number=\"6860\"></td>\n        <td id=\"LC6860\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6861\" class=\"blob-num js-line-number\" data-line-number=\"6861\"></td>\n        <td id=\"LC6861\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">switch</span> (extraBytes) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6862\" class=\"blob-num js-line-number\" data-line-number=\"6862\"></td>\n        <td id=\"LC6862\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">case</span> <span class=\"pl-c1\">1</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6863\" class=\"blob-num js-line-number\" data-line-number=\"6863\"></td>\n        <td id=\"LC6863\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\ttemp <span class=\"pl-k\">=</span> uint8[<span class=\"pl-smi\">uint8</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>]</td>\n      </tr>\n      <tr>\n        <td id=\"L6864\" class=\"blob-num js-line-number\" data-line-number=\"6864\"></td>\n        <td id=\"LC6864\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\toutput <span class=\"pl-k\">+=</span> <span class=\"pl-en\">encode</span>(temp <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">2</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6865\" class=\"blob-num js-line-number\" data-line-number=\"6865\"></td>\n        <td id=\"LC6865\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\toutput <span class=\"pl-k\">+=</span> <span class=\"pl-en\">encode</span>((temp <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">4</span>) <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x3F</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6866\" class=\"blob-num js-line-number\" data-line-number=\"6866\"></td>\n        <td id=\"LC6866\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\toutput <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>==<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6867\" class=\"blob-num js-line-number\" data-line-number=\"6867\"></td>\n        <td id=\"LC6867\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6868\" class=\"blob-num js-line-number\" data-line-number=\"6868\"></td>\n        <td id=\"LC6868\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">case</span> <span class=\"pl-c1\">2</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6869\" class=\"blob-num js-line-number\" data-line-number=\"6869\"></td>\n        <td id=\"LC6869\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\ttemp <span class=\"pl-k\">=</span> (uint8[<span class=\"pl-smi\">uint8</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">2</span>] <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">8</span>) <span class=\"pl-k\">+</span> (uint8[<span class=\"pl-smi\">uint8</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>])</td>\n      </tr>\n      <tr>\n        <td id=\"L6870\" class=\"blob-num js-line-number\" data-line-number=\"6870\"></td>\n        <td id=\"LC6870\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\toutput <span class=\"pl-k\">+=</span> <span class=\"pl-en\">encode</span>(temp <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">10</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6871\" class=\"blob-num js-line-number\" data-line-number=\"6871\"></td>\n        <td id=\"LC6871\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\toutput <span class=\"pl-k\">+=</span> <span class=\"pl-en\">encode</span>((temp <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">4</span>) <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x3F</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6872\" class=\"blob-num js-line-number\" data-line-number=\"6872\"></td>\n        <td id=\"LC6872\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\toutput <span class=\"pl-k\">+=</span> <span class=\"pl-en\">encode</span>((temp <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">2</span>) <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x3F</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6873\" class=\"blob-num js-line-number\" data-line-number=\"6873\"></td>\n        <td id=\"LC6873\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\toutput <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L6874\" class=\"blob-num js-line-number\" data-line-number=\"6874\"></td>\n        <td id=\"LC6874\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">break</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6875\" class=\"blob-num js-line-number\" data-line-number=\"6875\"></td>\n        <td id=\"LC6875\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L6876\" class=\"blob-num js-line-number\" data-line-number=\"6876\"></td>\n        <td id=\"LC6876\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6877\" class=\"blob-num js-line-number\" data-line-number=\"6877\"></td>\n        <td id=\"LC6877\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> output</td>\n      </tr>\n      <tr>\n        <td id=\"L6878\" class=\"blob-num js-line-number\" data-line-number=\"6878\"></td>\n        <td id=\"LC6878\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L6879\" class=\"blob-num js-line-number\" data-line-number=\"6879\"></td>\n        <td id=\"LC6879\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6880\" class=\"blob-num js-line-number\" data-line-number=\"6880\"></td>\n        <td id=\"LC6880\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">toByteArray</span> <span class=\"pl-k\">=</span> b64ToByteArray</td>\n      </tr>\n      <tr>\n        <td id=\"L6881\" class=\"blob-num js-line-number\" data-line-number=\"6881\"></td>\n        <td id=\"LC6881\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">fromByteArray</span> <span class=\"pl-k\">=</span> uint8ToBase64</td>\n      </tr>\n      <tr>\n        <td id=\"L6882\" class=\"blob-num js-line-number\" data-line-number=\"6882\"></td>\n        <td id=\"LC6882\" class=\"blob-code blob-code-inner js-file-line\">}(<span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">exports</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">?</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">base64js</span> <span class=\"pl-k\">=</span> {}) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">exports</span>))</td>\n      </tr>\n      <tr>\n        <td id=\"L6883\" class=\"blob-num js-line-number\" data-line-number=\"6883\"></td>\n        <td id=\"LC6883\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6884\" class=\"blob-num js-line-number\" data-line-number=\"6884\"></td>\n        <td id=\"LC6884\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">49</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L6885\" class=\"blob-num js-line-number\" data-line-number=\"6885\"></td>\n        <td id=\"LC6885\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">read</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">buffer</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">isLE</span>, <span class=\"pl-smi\">mLen</span>, <span class=\"pl-smi\">nBytes</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6886\" class=\"blob-num js-line-number\" data-line-number=\"6886\"></td>\n        <td id=\"LC6886\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> e, m</td>\n      </tr>\n      <tr>\n        <td id=\"L6887\" class=\"blob-num js-line-number\" data-line-number=\"6887\"></td>\n        <td id=\"LC6887\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> eLen <span class=\"pl-k\">=</span> nBytes <span class=\"pl-k\">*</span> <span class=\"pl-c1\">8</span> <span class=\"pl-k\">-</span> mLen <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6888\" class=\"blob-num js-line-number\" data-line-number=\"6888\"></td>\n        <td id=\"LC6888\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> eMax <span class=\"pl-k\">=</span> (<span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;&lt;</span> eLen) <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6889\" class=\"blob-num js-line-number\" data-line-number=\"6889\"></td>\n        <td id=\"LC6889\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> eBias <span class=\"pl-k\">=</span> eMax <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6890\" class=\"blob-num js-line-number\" data-line-number=\"6890\"></td>\n        <td id=\"LC6890\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> nBits <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">7</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6891\" class=\"blob-num js-line-number\" data-line-number=\"6891\"></td>\n        <td id=\"LC6891\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> isLE <span class=\"pl-k\">?</span> (nBytes <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6892\" class=\"blob-num js-line-number\" data-line-number=\"6892\"></td>\n        <td id=\"LC6892\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> d <span class=\"pl-k\">=</span> isLE <span class=\"pl-k\">?</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6893\" class=\"blob-num js-line-number\" data-line-number=\"6893\"></td>\n        <td id=\"LC6893\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> s <span class=\"pl-k\">=</span> buffer[offset <span class=\"pl-k\">+</span> i]</td>\n      </tr>\n      <tr>\n        <td id=\"L6894\" class=\"blob-num js-line-number\" data-line-number=\"6894\"></td>\n        <td id=\"LC6894\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6895\" class=\"blob-num js-line-number\" data-line-number=\"6895\"></td>\n        <td id=\"LC6895\" class=\"blob-code blob-code-inner js-file-line\">  i <span class=\"pl-k\">+=</span> d</td>\n      </tr>\n      <tr>\n        <td id=\"L6896\" class=\"blob-num js-line-number\" data-line-number=\"6896\"></td>\n        <td id=\"LC6896\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6897\" class=\"blob-num js-line-number\" data-line-number=\"6897\"></td>\n        <td id=\"LC6897\" class=\"blob-code blob-code-inner js-file-line\">  e <span class=\"pl-k\">=</span> s <span class=\"pl-k\">&amp;</span> ((<span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;&lt;</span> (<span class=\"pl-k\">-</span>nBits)) <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6898\" class=\"blob-num js-line-number\" data-line-number=\"6898\"></td>\n        <td id=\"LC6898\" class=\"blob-code blob-code-inner js-file-line\">  s <span class=\"pl-k\">&gt;&gt;=</span> (<span class=\"pl-k\">-</span>nBits)</td>\n      </tr>\n      <tr>\n        <td id=\"L6899\" class=\"blob-num js-line-number\" data-line-number=\"6899\"></td>\n        <td id=\"LC6899\" class=\"blob-code blob-code-inner js-file-line\">  nBits <span class=\"pl-k\">+=</span> eLen</td>\n      </tr>\n      <tr>\n        <td id=\"L6900\" class=\"blob-num js-line-number\" data-line-number=\"6900\"></td>\n        <td id=\"LC6900\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (; nBits <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>; e <span class=\"pl-k\">=</span> e <span class=\"pl-k\">*</span> <span class=\"pl-c1\">256</span> <span class=\"pl-k\">+</span> buffer[offset <span class=\"pl-k\">+</span> i], i <span class=\"pl-k\">+=</span> d, nBits <span class=\"pl-k\">-=</span> <span class=\"pl-c1\">8</span>) {}</td>\n      </tr>\n      <tr>\n        <td id=\"L6901\" class=\"blob-num js-line-number\" data-line-number=\"6901\"></td>\n        <td id=\"LC6901\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6902\" class=\"blob-num js-line-number\" data-line-number=\"6902\"></td>\n        <td id=\"LC6902\" class=\"blob-code blob-code-inner js-file-line\">  m <span class=\"pl-k\">=</span> e <span class=\"pl-k\">&amp;</span> ((<span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;&lt;</span> (<span class=\"pl-k\">-</span>nBits)) <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6903\" class=\"blob-num js-line-number\" data-line-number=\"6903\"></td>\n        <td id=\"LC6903\" class=\"blob-code blob-code-inner js-file-line\">  e <span class=\"pl-k\">&gt;&gt;=</span> (<span class=\"pl-k\">-</span>nBits)</td>\n      </tr>\n      <tr>\n        <td id=\"L6904\" class=\"blob-num js-line-number\" data-line-number=\"6904\"></td>\n        <td id=\"LC6904\" class=\"blob-code blob-code-inner js-file-line\">  nBits <span class=\"pl-k\">+=</span> mLen</td>\n      </tr>\n      <tr>\n        <td id=\"L6905\" class=\"blob-num js-line-number\" data-line-number=\"6905\"></td>\n        <td id=\"LC6905\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (; nBits <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>; m <span class=\"pl-k\">=</span> m <span class=\"pl-k\">*</span> <span class=\"pl-c1\">256</span> <span class=\"pl-k\">+</span> buffer[offset <span class=\"pl-k\">+</span> i], i <span class=\"pl-k\">+=</span> d, nBits <span class=\"pl-k\">-=</span> <span class=\"pl-c1\">8</span>) {}</td>\n      </tr>\n      <tr>\n        <td id=\"L6906\" class=\"blob-num js-line-number\" data-line-number=\"6906\"></td>\n        <td id=\"LC6906\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6907\" class=\"blob-num js-line-number\" data-line-number=\"6907\"></td>\n        <td id=\"LC6907\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (e <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6908\" class=\"blob-num js-line-number\" data-line-number=\"6908\"></td>\n        <td id=\"LC6908\" class=\"blob-code blob-code-inner js-file-line\">    e <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">-</span> eBias</td>\n      </tr>\n      <tr>\n        <td id=\"L6909\" class=\"blob-num js-line-number\" data-line-number=\"6909\"></td>\n        <td id=\"LC6909\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (e <span class=\"pl-k\">===</span> eMax) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6910\" class=\"blob-num js-line-number\" data-line-number=\"6910\"></td>\n        <td id=\"LC6910\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> m <span class=\"pl-k\">?</span> <span class=\"pl-c1\">NaN</span> <span class=\"pl-k\">:</span> ((s <span class=\"pl-k\">?</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>) <span class=\"pl-k\">*</span> <span class=\"pl-c1\">Infinity</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6911\" class=\"blob-num js-line-number\" data-line-number=\"6911\"></td>\n        <td id=\"LC6911\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6912\" class=\"blob-num js-line-number\" data-line-number=\"6912\"></td>\n        <td id=\"LC6912\" class=\"blob-code blob-code-inner js-file-line\">    m <span class=\"pl-k\">=</span> m <span class=\"pl-k\">+</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, mLen)</td>\n      </tr>\n      <tr>\n        <td id=\"L6913\" class=\"blob-num js-line-number\" data-line-number=\"6913\"></td>\n        <td id=\"LC6913\" class=\"blob-code blob-code-inner js-file-line\">    e <span class=\"pl-k\">=</span> e <span class=\"pl-k\">-</span> eBias</td>\n      </tr>\n      <tr>\n        <td id=\"L6914\" class=\"blob-num js-line-number\" data-line-number=\"6914\"></td>\n        <td id=\"LC6914\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6915\" class=\"blob-num js-line-number\" data-line-number=\"6915\"></td>\n        <td id=\"LC6915\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (s <span class=\"pl-k\">?</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">1</span>) <span class=\"pl-k\">*</span> m <span class=\"pl-k\">*</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, e <span class=\"pl-k\">-</span> mLen)</td>\n      </tr>\n      <tr>\n        <td id=\"L6916\" class=\"blob-num js-line-number\" data-line-number=\"6916\"></td>\n        <td id=\"LC6916\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6917\" class=\"blob-num js-line-number\" data-line-number=\"6917\"></td>\n        <td id=\"LC6917\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6918\" class=\"blob-num js-line-number\" data-line-number=\"6918\"></td>\n        <td id=\"LC6918\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">write</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">buffer</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">offset</span>, <span class=\"pl-smi\">isLE</span>, <span class=\"pl-smi\">mLen</span>, <span class=\"pl-smi\">nBytes</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6919\" class=\"blob-num js-line-number\" data-line-number=\"6919\"></td>\n        <td id=\"LC6919\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> e, m, c</td>\n      </tr>\n      <tr>\n        <td id=\"L6920\" class=\"blob-num js-line-number\" data-line-number=\"6920\"></td>\n        <td id=\"LC6920\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> eLen <span class=\"pl-k\">=</span> nBytes <span class=\"pl-k\">*</span> <span class=\"pl-c1\">8</span> <span class=\"pl-k\">-</span> mLen <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6921\" class=\"blob-num js-line-number\" data-line-number=\"6921\"></td>\n        <td id=\"LC6921\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> eMax <span class=\"pl-k\">=</span> (<span class=\"pl-c1\">1</span> <span class=\"pl-k\">&lt;&lt;</span> eLen) <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6922\" class=\"blob-num js-line-number\" data-line-number=\"6922\"></td>\n        <td id=\"LC6922\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> eBias <span class=\"pl-k\">=</span> eMax <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6923\" class=\"blob-num js-line-number\" data-line-number=\"6923\"></td>\n        <td id=\"LC6923\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> rt <span class=\"pl-k\">=</span> (mLen <span class=\"pl-k\">===</span> <span class=\"pl-c1\">23</span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">24</span>) <span class=\"pl-k\">-</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">77</span>) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6924\" class=\"blob-num js-line-number\" data-line-number=\"6924\"></td>\n        <td id=\"LC6924\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> isLE <span class=\"pl-k\">?</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">:</span> (nBytes <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6925\" class=\"blob-num js-line-number\" data-line-number=\"6925\"></td>\n        <td id=\"LC6925\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> d <span class=\"pl-k\">=</span> isLE <span class=\"pl-k\">?</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6926\" class=\"blob-num js-line-number\" data-line-number=\"6926\"></td>\n        <td id=\"LC6926\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> s <span class=\"pl-k\">=</span> value <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">||</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">/</span> value <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">?</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6927\" class=\"blob-num js-line-number\" data-line-number=\"6927\"></td>\n        <td id=\"LC6927\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6928\" class=\"blob-num js-line-number\" data-line-number=\"6928\"></td>\n        <td id=\"LC6928\" class=\"blob-code blob-code-inner js-file-line\">  value <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">abs</span>(value)</td>\n      </tr>\n      <tr>\n        <td id=\"L6929\" class=\"blob-num js-line-number\" data-line-number=\"6929\"></td>\n        <td id=\"LC6929\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6930\" class=\"blob-num js-line-number\" data-line-number=\"6930\"></td>\n        <td id=\"LC6930\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">isNaN</span>(value) <span class=\"pl-k\">||</span> value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">Infinity</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6931\" class=\"blob-num js-line-number\" data-line-number=\"6931\"></td>\n        <td id=\"LC6931\" class=\"blob-code blob-code-inner js-file-line\">    m <span class=\"pl-k\">=</span> <span class=\"pl-c1\">isNaN</span>(value) <span class=\"pl-k\">?</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6932\" class=\"blob-num js-line-number\" data-line-number=\"6932\"></td>\n        <td id=\"LC6932\" class=\"blob-code blob-code-inner js-file-line\">    e <span class=\"pl-k\">=</span> eMax</td>\n      </tr>\n      <tr>\n        <td id=\"L6933\" class=\"blob-num js-line-number\" data-line-number=\"6933\"></td>\n        <td id=\"LC6933\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6934\" class=\"blob-num js-line-number\" data-line-number=\"6934\"></td>\n        <td id=\"LC6934\" class=\"blob-code blob-code-inner js-file-line\">    e <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">floor</span>(<span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">log</span>(value) <span class=\"pl-k\">/</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">LN2</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L6935\" class=\"blob-num js-line-number\" data-line-number=\"6935\"></td>\n        <td id=\"LC6935\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">*</span> (c <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, <span class=\"pl-k\">-</span>e)) <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6936\" class=\"blob-num js-line-number\" data-line-number=\"6936\"></td>\n        <td id=\"LC6936\" class=\"blob-code blob-code-inner js-file-line\">      e<span class=\"pl-k\">--</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6937\" class=\"blob-num js-line-number\" data-line-number=\"6937\"></td>\n        <td id=\"LC6937\" class=\"blob-code blob-code-inner js-file-line\">      c <span class=\"pl-k\">*=</span> <span class=\"pl-c1\">2</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6938\" class=\"blob-num js-line-number\" data-line-number=\"6938\"></td>\n        <td id=\"LC6938\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L6939\" class=\"blob-num js-line-number\" data-line-number=\"6939\"></td>\n        <td id=\"LC6939\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (e <span class=\"pl-k\">+</span> eBias <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6940\" class=\"blob-num js-line-number\" data-line-number=\"6940\"></td>\n        <td id=\"LC6940\" class=\"blob-code blob-code-inner js-file-line\">      value <span class=\"pl-k\">+=</span> rt <span class=\"pl-k\">/</span> c</td>\n      </tr>\n      <tr>\n        <td id=\"L6941\" class=\"blob-num js-line-number\" data-line-number=\"6941\"></td>\n        <td id=\"LC6941\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6942\" class=\"blob-num js-line-number\" data-line-number=\"6942\"></td>\n        <td id=\"LC6942\" class=\"blob-code blob-code-inner js-file-line\">      value <span class=\"pl-k\">+=</span> rt <span class=\"pl-k\">*</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, <span class=\"pl-c1\">1</span> <span class=\"pl-k\">-</span> eBias)</td>\n      </tr>\n      <tr>\n        <td id=\"L6943\" class=\"blob-num js-line-number\" data-line-number=\"6943\"></td>\n        <td id=\"LC6943\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L6944\" class=\"blob-num js-line-number\" data-line-number=\"6944\"></td>\n        <td id=\"LC6944\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">*</span> c <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">2</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6945\" class=\"blob-num js-line-number\" data-line-number=\"6945\"></td>\n        <td id=\"LC6945\" class=\"blob-code blob-code-inner js-file-line\">      e<span class=\"pl-k\">++</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6946\" class=\"blob-num js-line-number\" data-line-number=\"6946\"></td>\n        <td id=\"LC6946\" class=\"blob-code blob-code-inner js-file-line\">      c <span class=\"pl-k\">/=</span> <span class=\"pl-c1\">2</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6947\" class=\"blob-num js-line-number\" data-line-number=\"6947\"></td>\n        <td id=\"LC6947\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L6948\" class=\"blob-num js-line-number\" data-line-number=\"6948\"></td>\n        <td id=\"LC6948\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6949\" class=\"blob-num js-line-number\" data-line-number=\"6949\"></td>\n        <td id=\"LC6949\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (e <span class=\"pl-k\">+</span> eBias <span class=\"pl-k\">&gt;=</span> eMax) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6950\" class=\"blob-num js-line-number\" data-line-number=\"6950\"></td>\n        <td id=\"LC6950\" class=\"blob-code blob-code-inner js-file-line\">      m <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6951\" class=\"blob-num js-line-number\" data-line-number=\"6951\"></td>\n        <td id=\"LC6951\" class=\"blob-code blob-code-inner js-file-line\">      e <span class=\"pl-k\">=</span> eMax</td>\n      </tr>\n      <tr>\n        <td id=\"L6952\" class=\"blob-num js-line-number\" data-line-number=\"6952\"></td>\n        <td id=\"LC6952\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (e <span class=\"pl-k\">+</span> eBias <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6953\" class=\"blob-num js-line-number\" data-line-number=\"6953\"></td>\n        <td id=\"LC6953\" class=\"blob-code blob-code-inner js-file-line\">      m <span class=\"pl-k\">=</span> (value <span class=\"pl-k\">*</span> c <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>) <span class=\"pl-k\">*</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, mLen)</td>\n      </tr>\n      <tr>\n        <td id=\"L6954\" class=\"blob-num js-line-number\" data-line-number=\"6954\"></td>\n        <td id=\"LC6954\" class=\"blob-code blob-code-inner js-file-line\">      e <span class=\"pl-k\">=</span> e <span class=\"pl-k\">+</span> eBias</td>\n      </tr>\n      <tr>\n        <td id=\"L6955\" class=\"blob-num js-line-number\" data-line-number=\"6955\"></td>\n        <td id=\"LC6955\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L6956\" class=\"blob-num js-line-number\" data-line-number=\"6956\"></td>\n        <td id=\"LC6956\" class=\"blob-code blob-code-inner js-file-line\">      m <span class=\"pl-k\">=</span> value <span class=\"pl-k\">*</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, eBias <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>) <span class=\"pl-k\">*</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, mLen)</td>\n      </tr>\n      <tr>\n        <td id=\"L6957\" class=\"blob-num js-line-number\" data-line-number=\"6957\"></td>\n        <td id=\"LC6957\" class=\"blob-code blob-code-inner js-file-line\">      e <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6958\" class=\"blob-num js-line-number\" data-line-number=\"6958\"></td>\n        <td id=\"LC6958\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L6959\" class=\"blob-num js-line-number\" data-line-number=\"6959\"></td>\n        <td id=\"LC6959\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6960\" class=\"blob-num js-line-number\" data-line-number=\"6960\"></td>\n        <td id=\"LC6960\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6961\" class=\"blob-num js-line-number\" data-line-number=\"6961\"></td>\n        <td id=\"LC6961\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (; mLen <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">8</span>; buffer[offset <span class=\"pl-k\">+</span> i] <span class=\"pl-k\">=</span> m <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xff</span>, i <span class=\"pl-k\">+=</span> d, m <span class=\"pl-k\">/=</span> <span class=\"pl-c1\">256</span>, mLen <span class=\"pl-k\">-=</span> <span class=\"pl-c1\">8</span>) {}</td>\n      </tr>\n      <tr>\n        <td id=\"L6962\" class=\"blob-num js-line-number\" data-line-number=\"6962\"></td>\n        <td id=\"LC6962\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6963\" class=\"blob-num js-line-number\" data-line-number=\"6963\"></td>\n        <td id=\"LC6963\" class=\"blob-code blob-code-inner js-file-line\">  e <span class=\"pl-k\">=</span> (e <span class=\"pl-k\">&lt;&lt;</span> mLen) <span class=\"pl-k\">|</span> m</td>\n      </tr>\n      <tr>\n        <td id=\"L6964\" class=\"blob-num js-line-number\" data-line-number=\"6964\"></td>\n        <td id=\"LC6964\" class=\"blob-code blob-code-inner js-file-line\">  eLen <span class=\"pl-k\">+=</span> mLen</td>\n      </tr>\n      <tr>\n        <td id=\"L6965\" class=\"blob-num js-line-number\" data-line-number=\"6965\"></td>\n        <td id=\"LC6965\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (; eLen <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>; buffer[offset <span class=\"pl-k\">+</span> i] <span class=\"pl-k\">=</span> e <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xff</span>, i <span class=\"pl-k\">+=</span> d, e <span class=\"pl-k\">/=</span> <span class=\"pl-c1\">256</span>, eLen <span class=\"pl-k\">-=</span> <span class=\"pl-c1\">8</span>) {}</td>\n      </tr>\n      <tr>\n        <td id=\"L6966\" class=\"blob-num js-line-number\" data-line-number=\"6966\"></td>\n        <td id=\"LC6966\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6967\" class=\"blob-num js-line-number\" data-line-number=\"6967\"></td>\n        <td id=\"LC6967\" class=\"blob-code blob-code-inner js-file-line\">  buffer[offset <span class=\"pl-k\">+</span> i <span class=\"pl-k\">-</span> d] <span class=\"pl-k\">|=</span> s <span class=\"pl-k\">*</span> <span class=\"pl-c1\">128</span></td>\n      </tr>\n      <tr>\n        <td id=\"L6968\" class=\"blob-num js-line-number\" data-line-number=\"6968\"></td>\n        <td id=\"LC6968\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6969\" class=\"blob-num js-line-number\" data-line-number=\"6969\"></td>\n        <td id=\"LC6969\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6970\" class=\"blob-num js-line-number\" data-line-number=\"6970\"></td>\n        <td id=\"LC6970\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">50</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L6971\" class=\"blob-num js-line-number\" data-line-number=\"6971\"></td>\n        <td id=\"LC6971\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Buffer <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>buffer<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-smi\">Buffer</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L6972\" class=\"blob-num js-line-number\" data-line-number=\"6972\"></td>\n        <td id=\"LC6972\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> intSize <span class=\"pl-k\">=</span> <span class=\"pl-c1\">4</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L6973\" class=\"blob-num js-line-number\" data-line-number=\"6973\"></td>\n        <td id=\"LC6973\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> zeroBuffer <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(intSize); <span class=\"pl-smi\">zeroBuffer</span>.<span class=\"pl-en\">fill</span>(<span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L6974\" class=\"blob-num js-line-number\" data-line-number=\"6974\"></td>\n        <td id=\"LC6974\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> chrsz <span class=\"pl-k\">=</span> <span class=\"pl-c1\">8</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L6975\" class=\"blob-num js-line-number\" data-line-number=\"6975\"></td>\n        <td id=\"LC6975\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6976\" class=\"blob-num js-line-number\" data-line-number=\"6976\"></td>\n        <td id=\"LC6976\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">toArray</span>(<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">bigEndian</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6977\" class=\"blob-num js-line-number\" data-line-number=\"6977\"></td>\n        <td id=\"LC6977\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> ((<span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">%</span> intSize) <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6978\" class=\"blob-num js-line-number\" data-line-number=\"6978\"></td>\n        <td id=\"LC6978\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">+</span> (intSize <span class=\"pl-k\">-</span> (<span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">%</span> intSize));</td>\n      </tr>\n      <tr>\n        <td id=\"L6979\" class=\"blob-num js-line-number\" data-line-number=\"6979\"></td>\n        <td id=\"LC6979\" class=\"blob-code blob-code-inner js-file-line\">    buf <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">concat</span>([buf, zeroBuffer], len);</td>\n      </tr>\n      <tr>\n        <td id=\"L6980\" class=\"blob-num js-line-number\" data-line-number=\"6980\"></td>\n        <td id=\"LC6980\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6981\" class=\"blob-num js-line-number\" data-line-number=\"6981\"></td>\n        <td id=\"LC6981\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6982\" class=\"blob-num js-line-number\" data-line-number=\"6982\"></td>\n        <td id=\"LC6982\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> arr <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L6983\" class=\"blob-num js-line-number\" data-line-number=\"6983\"></td>\n        <td id=\"LC6983\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> fn <span class=\"pl-k\">=</span> bigEndian <span class=\"pl-k\">?</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-smi\">readInt32BE</span> <span class=\"pl-k\">:</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-smi\">readInt32LE</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L6984\" class=\"blob-num js-line-number\" data-line-number=\"6984\"></td>\n        <td id=\"LC6984\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">+=</span> intSize) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6985\" class=\"blob-num js-line-number\" data-line-number=\"6985\"></td>\n        <td id=\"LC6985\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">arr</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">fn</span>.<span class=\"pl-c1\">call</span>(buf, i));</td>\n      </tr>\n      <tr>\n        <td id=\"L6986\" class=\"blob-num js-line-number\" data-line-number=\"6986\"></td>\n        <td id=\"LC6986\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6987\" class=\"blob-num js-line-number\" data-line-number=\"6987\"></td>\n        <td id=\"LC6987\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> arr;</td>\n      </tr>\n      <tr>\n        <td id=\"L6988\" class=\"blob-num js-line-number\" data-line-number=\"6988\"></td>\n        <td id=\"LC6988\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6989\" class=\"blob-num js-line-number\" data-line-number=\"6989\"></td>\n        <td id=\"LC6989\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6990\" class=\"blob-num js-line-number\" data-line-number=\"6990\"></td>\n        <td id=\"LC6990\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">toBuffer</span>(<span class=\"pl-smi\">arr</span>, <span class=\"pl-smi\">size</span>, <span class=\"pl-smi\">bigEndian</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6991\" class=\"blob-num js-line-number\" data-line-number=\"6991\"></td>\n        <td id=\"LC6991\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> buf <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(size);</td>\n      </tr>\n      <tr>\n        <td id=\"L6992\" class=\"blob-num js-line-number\" data-line-number=\"6992\"></td>\n        <td id=\"LC6992\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> fn <span class=\"pl-k\">=</span> bigEndian <span class=\"pl-k\">?</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-smi\">writeInt32BE</span> <span class=\"pl-k\">:</span> <span class=\"pl-smi\">buf</span>.<span class=\"pl-smi\">writeInt32LE</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L6993\" class=\"blob-num js-line-number\" data-line-number=\"6993\"></td>\n        <td id=\"LC6993\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">arr</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L6994\" class=\"blob-num js-line-number\" data-line-number=\"6994\"></td>\n        <td id=\"LC6994\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">fn</span>.<span class=\"pl-c1\">call</span>(buf, arr[i], i <span class=\"pl-k\">*</span> <span class=\"pl-c1\">4</span>, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L6995\" class=\"blob-num js-line-number\" data-line-number=\"6995\"></td>\n        <td id=\"LC6995\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L6996\" class=\"blob-num js-line-number\" data-line-number=\"6996\"></td>\n        <td id=\"LC6996\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> buf;</td>\n      </tr>\n      <tr>\n        <td id=\"L6997\" class=\"blob-num js-line-number\" data-line-number=\"6997\"></td>\n        <td id=\"LC6997\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L6998\" class=\"blob-num js-line-number\" data-line-number=\"6998\"></td>\n        <td id=\"LC6998\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L6999\" class=\"blob-num js-line-number\" data-line-number=\"6999\"></td>\n        <td id=\"LC6999\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">hash</span>(<span class=\"pl-smi\">buf</span>, <span class=\"pl-smi\">fn</span>, <span class=\"pl-smi\">hashSize</span>, <span class=\"pl-smi\">bigEndian</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7000\" class=\"blob-num js-line-number\" data-line-number=\"7000\"></td>\n        <td id=\"LC7000\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">isBuffer</span>(buf)) buf <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(buf);</td>\n      </tr>\n      <tr>\n        <td id=\"L7001\" class=\"blob-num js-line-number\" data-line-number=\"7001\"></td>\n        <td id=\"LC7001\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> arr <span class=\"pl-k\">=</span> <span class=\"pl-en\">fn</span>(<span class=\"pl-en\">toArray</span>(buf, bigEndian), <span class=\"pl-smi\">buf</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">*</span> chrsz);</td>\n      </tr>\n      <tr>\n        <td id=\"L7002\" class=\"blob-num js-line-number\" data-line-number=\"7002\"></td>\n        <td id=\"LC7002\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">toBuffer</span>(arr, hashSize, bigEndian);</td>\n      </tr>\n      <tr>\n        <td id=\"L7003\" class=\"blob-num js-line-number\" data-line-number=\"7003\"></td>\n        <td id=\"LC7003\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7004\" class=\"blob-num js-line-number\" data-line-number=\"7004\"></td>\n        <td id=\"LC7004\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7005\" class=\"blob-num js-line-number\" data-line-number=\"7005\"></td>\n        <td id=\"LC7005\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> { hash<span class=\"pl-k\">:</span> hash };</td>\n      </tr>\n      <tr>\n        <td id=\"L7006\" class=\"blob-num js-line-number\" data-line-number=\"7006\"></td>\n        <td id=\"LC7006\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7007\" class=\"blob-num js-line-number\" data-line-number=\"7007\"></td>\n        <td id=\"LC7007\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>buffer<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">47</span>}],<span class=\"pl-c1\">51</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L7008\" class=\"blob-num js-line-number\" data-line-number=\"7008\"></td>\n        <td id=\"LC7008\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Buffer <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>buffer<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-smi\">Buffer</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7009\" class=\"blob-num js-line-number\" data-line-number=\"7009\"></td>\n        <td id=\"LC7009\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> sha <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./sha<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7010\" class=\"blob-num js-line-number\" data-line-number=\"7010\"></td>\n        <td id=\"LC7010\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> sha256 <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./sha256<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7011\" class=\"blob-num js-line-number\" data-line-number=\"7011\"></td>\n        <td id=\"LC7011\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> rng <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./rng<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7012\" class=\"blob-num js-line-number\" data-line-number=\"7012\"></td>\n        <td id=\"LC7012\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> md5 <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./md5<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7013\" class=\"blob-num js-line-number\" data-line-number=\"7013\"></td>\n        <td id=\"LC7013\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7014\" class=\"blob-num js-line-number\" data-line-number=\"7014\"></td>\n        <td id=\"LC7014\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> algorithms <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7015\" class=\"blob-num js-line-number\" data-line-number=\"7015\"></td>\n        <td id=\"LC7015\" class=\"blob-code blob-code-inner js-file-line\">  sha1<span class=\"pl-k\">:</span> sha,</td>\n      </tr>\n      <tr>\n        <td id=\"L7016\" class=\"blob-num js-line-number\" data-line-number=\"7016\"></td>\n        <td id=\"LC7016\" class=\"blob-code blob-code-inner js-file-line\">  sha256<span class=\"pl-k\">:</span> sha256,</td>\n      </tr>\n      <tr>\n        <td id=\"L7017\" class=\"blob-num js-line-number\" data-line-number=\"7017\"></td>\n        <td id=\"LC7017\" class=\"blob-code blob-code-inner js-file-line\">  md5<span class=\"pl-k\">:</span> md5</td>\n      </tr>\n      <tr>\n        <td id=\"L7018\" class=\"blob-num js-line-number\" data-line-number=\"7018\"></td>\n        <td id=\"LC7018\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7019\" class=\"blob-num js-line-number\" data-line-number=\"7019\"></td>\n        <td id=\"LC7019\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7020\" class=\"blob-num js-line-number\" data-line-number=\"7020\"></td>\n        <td id=\"LC7020\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> blocksize <span class=\"pl-k\">=</span> <span class=\"pl-c1\">64</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7021\" class=\"blob-num js-line-number\" data-line-number=\"7021\"></td>\n        <td id=\"LC7021\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> zeroBuffer <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(blocksize); <span class=\"pl-smi\">zeroBuffer</span>.<span class=\"pl-en\">fill</span>(<span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7022\" class=\"blob-num js-line-number\" data-line-number=\"7022\"></td>\n        <td id=\"LC7022\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">hmac</span>(<span class=\"pl-smi\">fn</span>, <span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7023\" class=\"blob-num js-line-number\" data-line-number=\"7023\"></td>\n        <td id=\"LC7023\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span>(<span class=\"pl-k\">!</span><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">isBuffer</span>(key)) key <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(key)</td>\n      </tr>\n      <tr>\n        <td id=\"L7024\" class=\"blob-num js-line-number\" data-line-number=\"7024\"></td>\n        <td id=\"LC7024\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span>(<span class=\"pl-k\">!</span><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">isBuffer</span>(data)) data <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(data)</td>\n      </tr>\n      <tr>\n        <td id=\"L7025\" class=\"blob-num js-line-number\" data-line-number=\"7025\"></td>\n        <td id=\"LC7025\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7026\" class=\"blob-num js-line-number\" data-line-number=\"7026\"></td>\n        <td id=\"LC7026\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span>(<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> blocksize) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7027\" class=\"blob-num js-line-number\" data-line-number=\"7027\"></td>\n        <td id=\"LC7027\" class=\"blob-code blob-code-inner js-file-line\">    key <span class=\"pl-k\">=</span> <span class=\"pl-en\">fn</span>(key)</td>\n      </tr>\n      <tr>\n        <td id=\"L7028\" class=\"blob-num js-line-number\" data-line-number=\"7028\"></td>\n        <td id=\"LC7028\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span>(<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&lt;</span> blocksize) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7029\" class=\"blob-num js-line-number\" data-line-number=\"7029\"></td>\n        <td id=\"LC7029\" class=\"blob-code blob-code-inner js-file-line\">    key <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">concat</span>([key, zeroBuffer], blocksize)</td>\n      </tr>\n      <tr>\n        <td id=\"L7030\" class=\"blob-num js-line-number\" data-line-number=\"7030\"></td>\n        <td id=\"LC7030\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7031\" class=\"blob-num js-line-number\" data-line-number=\"7031\"></td>\n        <td id=\"LC7031\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7032\" class=\"blob-num js-line-number\" data-line-number=\"7032\"></td>\n        <td id=\"LC7032\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> ipad <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(blocksize), opad <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(blocksize)</td>\n      </tr>\n      <tr>\n        <td id=\"L7033\" class=\"blob-num js-line-number\" data-line-number=\"7033\"></td>\n        <td id=\"LC7033\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span>(<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> blocksize; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7034\" class=\"blob-num js-line-number\" data-line-number=\"7034\"></td>\n        <td id=\"LC7034\" class=\"blob-code blob-code-inner js-file-line\">    ipad[i] <span class=\"pl-k\">=</span> key[i] <span class=\"pl-k\">^</span> <span class=\"pl-c1\">0x36</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7035\" class=\"blob-num js-line-number\" data-line-number=\"7035\"></td>\n        <td id=\"LC7035\" class=\"blob-code blob-code-inner js-file-line\">    opad[i] <span class=\"pl-k\">=</span> key[i] <span class=\"pl-k\">^</span> <span class=\"pl-c1\">0x5C</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7036\" class=\"blob-num js-line-number\" data-line-number=\"7036\"></td>\n        <td id=\"LC7036\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7037\" class=\"blob-num js-line-number\" data-line-number=\"7037\"></td>\n        <td id=\"LC7037\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7038\" class=\"blob-num js-line-number\" data-line-number=\"7038\"></td>\n        <td id=\"LC7038\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> hash <span class=\"pl-k\">=</span> <span class=\"pl-en\">fn</span>(<span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">concat</span>([ipad, data]))</td>\n      </tr>\n      <tr>\n        <td id=\"L7039\" class=\"blob-num js-line-number\" data-line-number=\"7039\"></td>\n        <td id=\"LC7039\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">fn</span>(<span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">concat</span>([opad, hash]))</td>\n      </tr>\n      <tr>\n        <td id=\"L7040\" class=\"blob-num js-line-number\" data-line-number=\"7040\"></td>\n        <td id=\"LC7040\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7041\" class=\"blob-num js-line-number\" data-line-number=\"7041\"></td>\n        <td id=\"LC7041\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7042\" class=\"blob-num js-line-number\" data-line-number=\"7042\"></td>\n        <td id=\"LC7042\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">hash</span>(<span class=\"pl-smi\">alg</span>, <span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7043\" class=\"blob-num js-line-number\" data-line-number=\"7043\"></td>\n        <td id=\"LC7043\" class=\"blob-code blob-code-inner js-file-line\">  alg <span class=\"pl-k\">=</span> alg <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sha1<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7044\" class=\"blob-num js-line-number\" data-line-number=\"7044\"></td>\n        <td id=\"LC7044\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> fn <span class=\"pl-k\">=</span> algorithms[alg]</td>\n      </tr>\n      <tr>\n        <td id=\"L7045\" class=\"blob-num js-line-number\" data-line-number=\"7045\"></td>\n        <td id=\"LC7045\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> bufs <span class=\"pl-k\">=</span> []</td>\n      </tr>\n      <tr>\n        <td id=\"L7046\" class=\"blob-num js-line-number\" data-line-number=\"7046\"></td>\n        <td id=\"LC7046\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7047\" class=\"blob-num js-line-number\" data-line-number=\"7047\"></td>\n        <td id=\"LC7047\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span>(<span class=\"pl-k\">!</span>fn) <span class=\"pl-en\">error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>algorithm:<span class=\"pl-pds\">&#39;</span></span>, alg, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>is not yet supported<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7048\" class=\"blob-num js-line-number\" data-line-number=\"7048\"></td>\n        <td id=\"LC7048\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7049\" class=\"blob-num js-line-number\" data-line-number=\"7049\"></td>\n        <td id=\"LC7049\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">update</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7050\" class=\"blob-num js-line-number\" data-line-number=\"7050\"></td>\n        <td id=\"LC7050\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span>(<span class=\"pl-k\">!</span><span class=\"pl-smi\">Buffer</span>.<span class=\"pl-en\">isBuffer</span>(data)) data <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(data)</td>\n      </tr>\n      <tr>\n        <td id=\"L7051\" class=\"blob-num js-line-number\" data-line-number=\"7051\"></td>\n        <td id=\"LC7051\" class=\"blob-code blob-code-inner js-file-line\">        </td>\n      </tr>\n      <tr>\n        <td id=\"L7052\" class=\"blob-num js-line-number\" data-line-number=\"7052\"></td>\n        <td id=\"LC7052\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">bufs</span>.<span class=\"pl-c1\">push</span>(data)</td>\n      </tr>\n      <tr>\n        <td id=\"L7053\" class=\"blob-num js-line-number\" data-line-number=\"7053\"></td>\n        <td id=\"LC7053\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">+=</span> <span class=\"pl-smi\">data</span>.<span class=\"pl-c1\">length</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7054\" class=\"blob-num js-line-number\" data-line-number=\"7054\"></td>\n        <td id=\"LC7054\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7055\" class=\"blob-num js-line-number\" data-line-number=\"7055\"></td>\n        <td id=\"LC7055\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L7056\" class=\"blob-num js-line-number\" data-line-number=\"7056\"></td>\n        <td id=\"LC7056\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">digest</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">enc</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7057\" class=\"blob-num js-line-number\" data-line-number=\"7057\"></td>\n        <td id=\"LC7057\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> buf <span class=\"pl-k\">=</span> <span class=\"pl-smi\">Buffer</span>.<span class=\"pl-c1\">concat</span>(bufs)</td>\n      </tr>\n      <tr>\n        <td id=\"L7058\" class=\"blob-num js-line-number\" data-line-number=\"7058\"></td>\n        <td id=\"LC7058\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> r <span class=\"pl-k\">=</span> key <span class=\"pl-k\">?</span> <span class=\"pl-en\">hmac</span>(fn, key, buf) <span class=\"pl-k\">:</span> <span class=\"pl-en\">fn</span>(buf)</td>\n      </tr>\n      <tr>\n        <td id=\"L7059\" class=\"blob-num js-line-number\" data-line-number=\"7059\"></td>\n        <td id=\"LC7059\" class=\"blob-code blob-code-inner js-file-line\">      bufs <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7060\" class=\"blob-num js-line-number\" data-line-number=\"7060\"></td>\n        <td id=\"LC7060\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> enc <span class=\"pl-k\">?</span> <span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">toString</span>(enc) <span class=\"pl-k\">:</span> r</td>\n      </tr>\n      <tr>\n        <td id=\"L7061\" class=\"blob-num js-line-number\" data-line-number=\"7061\"></td>\n        <td id=\"LC7061\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7062\" class=\"blob-num js-line-number\" data-line-number=\"7062\"></td>\n        <td id=\"LC7062\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7063\" class=\"blob-num js-line-number\" data-line-number=\"7063\"></td>\n        <td id=\"LC7063\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7064\" class=\"blob-num js-line-number\" data-line-number=\"7064\"></td>\n        <td id=\"LC7064\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7065\" class=\"blob-num js-line-number\" data-line-number=\"7065\"></td>\n        <td id=\"LC7065\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">error</span> () {</td>\n      </tr>\n      <tr>\n        <td id=\"L7066\" class=\"blob-num js-line-number\" data-line-number=\"7066\"></td>\n        <td id=\"LC7066\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> m <span class=\"pl-k\">=</span> [].<span class=\"pl-smi\">slice</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">arguments</span>).<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7067\" class=\"blob-num js-line-number\" data-line-number=\"7067\"></td>\n        <td id=\"LC7067\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>([</td>\n      </tr>\n      <tr>\n        <td id=\"L7068\" class=\"blob-num js-line-number\" data-line-number=\"7068\"></td>\n        <td id=\"LC7068\" class=\"blob-code blob-code-inner js-file-line\">    m,</td>\n      </tr>\n      <tr>\n        <td id=\"L7069\" class=\"blob-num js-line-number\" data-line-number=\"7069\"></td>\n        <td id=\"LC7069\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>we accept pull requests<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7070\" class=\"blob-num js-line-number\" data-line-number=\"7070\"></td>\n        <td id=\"LC7070\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>http://github.com/dominictarr/crypto-browserify<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7071\" class=\"blob-num js-line-number\" data-line-number=\"7071\"></td>\n        <td id=\"LC7071\" class=\"blob-code blob-code-inner js-file-line\">    ].<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>))</td>\n      </tr>\n      <tr>\n        <td id=\"L7072\" class=\"blob-num js-line-number\" data-line-number=\"7072\"></td>\n        <td id=\"LC7072\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7073\" class=\"blob-num js-line-number\" data-line-number=\"7073\"></td>\n        <td id=\"LC7073\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7074\" class=\"blob-num js-line-number\" data-line-number=\"7074\"></td>\n        <td id=\"LC7074\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">createHash</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">alg</span>) { <span class=\"pl-k\">return</span> <span class=\"pl-en\">hash</span>(alg) }</td>\n      </tr>\n      <tr>\n        <td id=\"L7075\" class=\"blob-num js-line-number\" data-line-number=\"7075\"></td>\n        <td id=\"LC7075\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">createHmac</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">alg</span>, <span class=\"pl-smi\">key</span>) { <span class=\"pl-k\">return</span> <span class=\"pl-en\">hash</span>(alg, key) }</td>\n      </tr>\n      <tr>\n        <td id=\"L7076\" class=\"blob-num js-line-number\" data-line-number=\"7076\"></td>\n        <td id=\"LC7076\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">randomBytes</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">size</span>, <span class=\"pl-smi\">callback</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7077\" class=\"blob-num js-line-number\" data-line-number=\"7077\"></td>\n        <td id=\"LC7077\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (callback <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">callback</span>.<span class=\"pl-smi\">call</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7078\" class=\"blob-num js-line-number\" data-line-number=\"7078\"></td>\n        <td id=\"LC7078\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7079\" class=\"blob-num js-line-number\" data-line-number=\"7079\"></td>\n        <td id=\"LC7079\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">callback</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-c1\">undefined</span>, <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(<span class=\"pl-en\">rng</span>(size)))</td>\n      </tr>\n      <tr>\n        <td id=\"L7080\" class=\"blob-num js-line-number\" data-line-number=\"7080\"></td>\n        <td id=\"LC7080\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">catch</span> (err) { <span class=\"pl-en\">callback</span>(err) }</td>\n      </tr>\n      <tr>\n        <td id=\"L7081\" class=\"blob-num js-line-number\" data-line-number=\"7081\"></td>\n        <td id=\"LC7081\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7082\" class=\"blob-num js-line-number\" data-line-number=\"7082\"></td>\n        <td id=\"LC7082\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Buffer</span>(<span class=\"pl-en\">rng</span>(size))</td>\n      </tr>\n      <tr>\n        <td id=\"L7083\" class=\"blob-num js-line-number\" data-line-number=\"7083\"></td>\n        <td id=\"LC7083\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7084\" class=\"blob-num js-line-number\" data-line-number=\"7084\"></td>\n        <td id=\"LC7084\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7085\" class=\"blob-num js-line-number\" data-line-number=\"7085\"></td>\n        <td id=\"LC7085\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7086\" class=\"blob-num js-line-number\" data-line-number=\"7086\"></td>\n        <td id=\"LC7086\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">each</span>(<span class=\"pl-smi\">a</span>, <span class=\"pl-smi\">f</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7087\" class=\"blob-num js-line-number\" data-line-number=\"7087\"></td>\n        <td id=\"LC7087\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span>(<span class=\"pl-k\">var</span> i <span class=\"pl-k\">in</span> a)</td>\n      </tr>\n      <tr>\n        <td id=\"L7088\" class=\"blob-num js-line-number\" data-line-number=\"7088\"></td>\n        <td id=\"LC7088\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">f</span>(a[i], i)</td>\n      </tr>\n      <tr>\n        <td id=\"L7089\" class=\"blob-num js-line-number\" data-line-number=\"7089\"></td>\n        <td id=\"LC7089\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7090\" class=\"blob-num js-line-number\" data-line-number=\"7090\"></td>\n        <td id=\"LC7090\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7091\" class=\"blob-num js-line-number\" data-line-number=\"7091\"></td>\n        <td id=\"LC7091\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-en\">each</span>([<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>createCredentials<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7092\" class=\"blob-num js-line-number\" data-line-number=\"7092\"></td>\n        <td id=\"LC7092\" class=\"blob-code blob-code-inner js-file-line\">, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>createCipher<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7093\" class=\"blob-num js-line-number\" data-line-number=\"7093\"></td>\n        <td id=\"LC7093\" class=\"blob-code blob-code-inner js-file-line\">, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>createCipheriv<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7094\" class=\"blob-num js-line-number\" data-line-number=\"7094\"></td>\n        <td id=\"LC7094\" class=\"blob-code blob-code-inner js-file-line\">, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>createDecipher<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7095\" class=\"blob-num js-line-number\" data-line-number=\"7095\"></td>\n        <td id=\"LC7095\" class=\"blob-code blob-code-inner js-file-line\">, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>createDecipheriv<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7096\" class=\"blob-num js-line-number\" data-line-number=\"7096\"></td>\n        <td id=\"LC7096\" class=\"blob-code blob-code-inner js-file-line\">, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>createSign<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7097\" class=\"blob-num js-line-number\" data-line-number=\"7097\"></td>\n        <td id=\"LC7097\" class=\"blob-code blob-code-inner js-file-line\">, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>createVerify<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7098\" class=\"blob-num js-line-number\" data-line-number=\"7098\"></td>\n        <td id=\"LC7098\" class=\"blob-code blob-code-inner js-file-line\">, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>createDiffieHellman<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7099\" class=\"blob-num js-line-number\" data-line-number=\"7099\"></td>\n        <td id=\"LC7099\" class=\"blob-code blob-code-inner js-file-line\">, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>pbkdf2<span class=\"pl-pds\">&#39;</span></span>], <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">name</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7100\" class=\"blob-num js-line-number\" data-line-number=\"7100\"></td>\n        <td id=\"LC7100\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">exports</span>[name] <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> () {</td>\n      </tr>\n      <tr>\n        <td id=\"L7101\" class=\"blob-num js-line-number\" data-line-number=\"7101\"></td>\n        <td id=\"LC7101\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>sorry,<span class=\"pl-pds\">&#39;</span></span>, name, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>is not implemented yet<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7102\" class=\"blob-num js-line-number\" data-line-number=\"7102\"></td>\n        <td id=\"LC7102\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7103\" class=\"blob-num js-line-number\" data-line-number=\"7103\"></td>\n        <td id=\"LC7103\" class=\"blob-code blob-code-inner js-file-line\">})</td>\n      </tr>\n      <tr>\n        <td id=\"L7104\" class=\"blob-num js-line-number\" data-line-number=\"7104\"></td>\n        <td id=\"LC7104\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7105\" class=\"blob-num js-line-number\" data-line-number=\"7105\"></td>\n        <td id=\"LC7105\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./md5<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">52</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./rng<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">53</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./sha<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">54</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./sha256<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">55</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>buffer<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">47</span>}],<span class=\"pl-c1\">52</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L7106\" class=\"blob-num js-line-number\" data-line-number=\"7106\"></td>\n        <td id=\"LC7106\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7107\" class=\"blob-num js-line-number\" data-line-number=\"7107\"></td>\n        <td id=\"LC7107\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7108\" class=\"blob-num js-line-number\" data-line-number=\"7108\"></td>\n        <td id=\"LC7108\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> helpers <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./helpers<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7109\" class=\"blob-num js-line-number\" data-line-number=\"7109\"></td>\n        <td id=\"LC7109\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7110\" class=\"blob-num js-line-number\" data-line-number=\"7110\"></td>\n        <td id=\"LC7110\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7111\" class=\"blob-num js-line-number\" data-line-number=\"7111\"></td>\n        <td id=\"LC7111\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">md5_vm_test</span>()</td>\n      </tr>\n      <tr>\n        <td id=\"L7112\" class=\"blob-num js-line-number\" data-line-number=\"7112\"></td>\n        <td id=\"LC7112\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7113\" class=\"blob-num js-line-number\" data-line-number=\"7113\"></td>\n        <td id=\"LC7113\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">hex_md5</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>abc<span class=\"pl-pds\">&quot;</span></span>) <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>900150983cd24fb0d6963f7d28e17f72<span class=\"pl-pds\">&quot;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7114\" class=\"blob-num js-line-number\" data-line-number=\"7114\"></td>\n        <td id=\"LC7114\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7115\" class=\"blob-num js-line-number\" data-line-number=\"7115\"></td>\n        <td id=\"LC7115\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7116\" class=\"blob-num js-line-number\" data-line-number=\"7116\"></td>\n        <td id=\"LC7116\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7117\" class=\"blob-num js-line-number\" data-line-number=\"7117\"></td>\n        <td id=\"LC7117\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">core_md5</span>(<span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">len</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7118\" class=\"blob-num js-line-number\" data-line-number=\"7118\"></td>\n        <td id=\"LC7118\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7119\" class=\"blob-num js-line-number\" data-line-number=\"7119\"></td>\n        <td id=\"LC7119\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7120\" class=\"blob-num js-line-number\" data-line-number=\"7120\"></td>\n        <td id=\"LC7120\" class=\"blob-code blob-code-inner js-file-line\">  x[len <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">5</span>] <span class=\"pl-k\">|=</span> <span class=\"pl-c1\">0x80</span> <span class=\"pl-k\">&lt;&lt;</span> ((len) <span class=\"pl-k\">%</span> <span class=\"pl-c1\">32</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7121\" class=\"blob-num js-line-number\" data-line-number=\"7121\"></td>\n        <td id=\"LC7121\" class=\"blob-code blob-code-inner js-file-line\">  x[(((len <span class=\"pl-k\">+</span> <span class=\"pl-c1\">64</span>) <span class=\"pl-k\">&gt;&gt;&gt;</span> <span class=\"pl-c1\">9</span>) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">4</span>) <span class=\"pl-k\">+</span> <span class=\"pl-c1\">14</span>] <span class=\"pl-k\">=</span> len;</td>\n      </tr>\n      <tr>\n        <td id=\"L7122\" class=\"blob-num js-line-number\" data-line-number=\"7122\"></td>\n        <td id=\"LC7122\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7123\" class=\"blob-num js-line-number\" data-line-number=\"7123\"></td>\n        <td id=\"LC7123\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> a <span class=\"pl-k\">=</span>  <span class=\"pl-c1\">1732584193</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7124\" class=\"blob-num js-line-number\" data-line-number=\"7124\"></td>\n        <td id=\"LC7124\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> b <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">271733879</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7125\" class=\"blob-num js-line-number\" data-line-number=\"7125\"></td>\n        <td id=\"LC7125\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> c <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1732584194</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7126\" class=\"blob-num js-line-number\" data-line-number=\"7126\"></td>\n        <td id=\"LC7126\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> d <span class=\"pl-k\">=</span>  <span class=\"pl-c1\">271733878</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7127\" class=\"blob-num js-line-number\" data-line-number=\"7127\"></td>\n        <td id=\"LC7127\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7128\" class=\"blob-num js-line-number\" data-line-number=\"7128\"></td>\n        <td id=\"LC7128\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span>(<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">x</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">+=</span> <span class=\"pl-c1\">16</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7129\" class=\"blob-num js-line-number\" data-line-number=\"7129\"></td>\n        <td id=\"LC7129\" class=\"blob-code blob-code-inner js-file-line\">  {</td>\n      </tr>\n      <tr>\n        <td id=\"L7130\" class=\"blob-num js-line-number\" data-line-number=\"7130\"></td>\n        <td id=\"LC7130\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> olda <span class=\"pl-k\">=</span> a;</td>\n      </tr>\n      <tr>\n        <td id=\"L7131\" class=\"blob-num js-line-number\" data-line-number=\"7131\"></td>\n        <td id=\"LC7131\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> oldb <span class=\"pl-k\">=</span> b;</td>\n      </tr>\n      <tr>\n        <td id=\"L7132\" class=\"blob-num js-line-number\" data-line-number=\"7132\"></td>\n        <td id=\"LC7132\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> oldc <span class=\"pl-k\">=</span> c;</td>\n      </tr>\n      <tr>\n        <td id=\"L7133\" class=\"blob-num js-line-number\" data-line-number=\"7133\"></td>\n        <td id=\"LC7133\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> oldd <span class=\"pl-k\">=</span> d;</td>\n      </tr>\n      <tr>\n        <td id=\"L7134\" class=\"blob-num js-line-number\" data-line-number=\"7134\"></td>\n        <td id=\"LC7134\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7135\" class=\"blob-num js-line-number\" data-line-number=\"7135\"></td>\n        <td id=\"LC7135\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">0</span>], <span class=\"pl-c1\">7</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">680876936</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7136\" class=\"blob-num js-line-number\" data-line-number=\"7136\"></td>\n        <td id=\"LC7136\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>], <span class=\"pl-c1\">12</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">389564586</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7137\" class=\"blob-num js-line-number\" data-line-number=\"7137\"></td>\n        <td id=\"LC7137\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span>], <span class=\"pl-c1\">17</span>,  <span class=\"pl-c1\">606105819</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7138\" class=\"blob-num js-line-number\" data-line-number=\"7138\"></td>\n        <td id=\"LC7138\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span>], <span class=\"pl-c1\">22</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1044525330</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7139\" class=\"blob-num js-line-number\" data-line-number=\"7139\"></td>\n        <td id=\"LC7139\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">4</span>], <span class=\"pl-c1\">7</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">176418897</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7140\" class=\"blob-num js-line-number\" data-line-number=\"7140\"></td>\n        <td id=\"LC7140\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">5</span>], <span class=\"pl-c1\">12</span>,  <span class=\"pl-c1\">1200080426</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7141\" class=\"blob-num js-line-number\" data-line-number=\"7141\"></td>\n        <td id=\"LC7141\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">6</span>], <span class=\"pl-c1\">17</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1473231341</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7142\" class=\"blob-num js-line-number\" data-line-number=\"7142\"></td>\n        <td id=\"LC7142\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">7</span>], <span class=\"pl-c1\">22</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">45705983</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7143\" class=\"blob-num js-line-number\" data-line-number=\"7143\"></td>\n        <td id=\"LC7143\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">8</span>], <span class=\"pl-c1\">7</span> ,  <span class=\"pl-c1\">1770035416</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7144\" class=\"blob-num js-line-number\" data-line-number=\"7144\"></td>\n        <td id=\"LC7144\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">9</span>], <span class=\"pl-c1\">12</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1958414417</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7145\" class=\"blob-num js-line-number\" data-line-number=\"7145\"></td>\n        <td id=\"LC7145\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">10</span>], <span class=\"pl-c1\">17</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">42063</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7146\" class=\"blob-num js-line-number\" data-line-number=\"7146\"></td>\n        <td id=\"LC7146\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">11</span>], <span class=\"pl-c1\">22</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1990404162</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7147\" class=\"blob-num js-line-number\" data-line-number=\"7147\"></td>\n        <td id=\"LC7147\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">12</span>], <span class=\"pl-c1\">7</span> ,  <span class=\"pl-c1\">1804603682</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7148\" class=\"blob-num js-line-number\" data-line-number=\"7148\"></td>\n        <td id=\"LC7148\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">13</span>], <span class=\"pl-c1\">12</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">40341101</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7149\" class=\"blob-num js-line-number\" data-line-number=\"7149\"></td>\n        <td id=\"LC7149\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">14</span>], <span class=\"pl-c1\">17</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1502002290</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7150\" class=\"blob-num js-line-number\" data-line-number=\"7150\"></td>\n        <td id=\"LC7150\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ff</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">15</span>], <span class=\"pl-c1\">22</span>,  <span class=\"pl-c1\">1236535329</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7151\" class=\"blob-num js-line-number\" data-line-number=\"7151\"></td>\n        <td id=\"LC7151\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7152\" class=\"blob-num js-line-number\" data-line-number=\"7152\"></td>\n        <td id=\"LC7152\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>], <span class=\"pl-c1\">5</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">165796510</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7153\" class=\"blob-num js-line-number\" data-line-number=\"7153\"></td>\n        <td id=\"LC7153\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">6</span>], <span class=\"pl-c1\">9</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">1069501632</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7154\" class=\"blob-num js-line-number\" data-line-number=\"7154\"></td>\n        <td id=\"LC7154\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">11</span>], <span class=\"pl-c1\">14</span>,  <span class=\"pl-c1\">643717713</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7155\" class=\"blob-num js-line-number\" data-line-number=\"7155\"></td>\n        <td id=\"LC7155\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">0</span>], <span class=\"pl-c1\">20</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">373897302</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7156\" class=\"blob-num js-line-number\" data-line-number=\"7156\"></td>\n        <td id=\"LC7156\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">5</span>], <span class=\"pl-c1\">5</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">701558691</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7157\" class=\"blob-num js-line-number\" data-line-number=\"7157\"></td>\n        <td id=\"LC7157\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">10</span>], <span class=\"pl-c1\">9</span> ,  <span class=\"pl-c1\">38016083</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7158\" class=\"blob-num js-line-number\" data-line-number=\"7158\"></td>\n        <td id=\"LC7158\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">15</span>], <span class=\"pl-c1\">14</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">660478335</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7159\" class=\"blob-num js-line-number\" data-line-number=\"7159\"></td>\n        <td id=\"LC7159\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">4</span>], <span class=\"pl-c1\">20</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">405537848</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7160\" class=\"blob-num js-line-number\" data-line-number=\"7160\"></td>\n        <td id=\"LC7160\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">9</span>], <span class=\"pl-c1\">5</span> ,  <span class=\"pl-c1\">568446438</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7161\" class=\"blob-num js-line-number\" data-line-number=\"7161\"></td>\n        <td id=\"LC7161\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">14</span>], <span class=\"pl-c1\">9</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">1019803690</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7162\" class=\"blob-num js-line-number\" data-line-number=\"7162\"></td>\n        <td id=\"LC7162\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span>], <span class=\"pl-c1\">14</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">187363961</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7163\" class=\"blob-num js-line-number\" data-line-number=\"7163\"></td>\n        <td id=\"LC7163\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">8</span>], <span class=\"pl-c1\">20</span>,  <span class=\"pl-c1\">1163531501</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7164\" class=\"blob-num js-line-number\" data-line-number=\"7164\"></td>\n        <td id=\"LC7164\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">13</span>], <span class=\"pl-c1\">5</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">1444681467</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7165\" class=\"blob-num js-line-number\" data-line-number=\"7165\"></td>\n        <td id=\"LC7165\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span>], <span class=\"pl-c1\">9</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">51403784</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7166\" class=\"blob-num js-line-number\" data-line-number=\"7166\"></td>\n        <td id=\"LC7166\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">7</span>], <span class=\"pl-c1\">14</span>,  <span class=\"pl-c1\">1735328473</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7167\" class=\"blob-num js-line-number\" data-line-number=\"7167\"></td>\n        <td id=\"LC7167\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_gg</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">12</span>], <span class=\"pl-c1\">20</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1926607734</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7168\" class=\"blob-num js-line-number\" data-line-number=\"7168\"></td>\n        <td id=\"LC7168\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7169\" class=\"blob-num js-line-number\" data-line-number=\"7169\"></td>\n        <td id=\"LC7169\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">5</span>], <span class=\"pl-c1\">4</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">378558</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7170\" class=\"blob-num js-line-number\" data-line-number=\"7170\"></td>\n        <td id=\"LC7170\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">8</span>], <span class=\"pl-c1\">11</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">2022574463</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7171\" class=\"blob-num js-line-number\" data-line-number=\"7171\"></td>\n        <td id=\"LC7171\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">11</span>], <span class=\"pl-c1\">16</span>,  <span class=\"pl-c1\">1839030562</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7172\" class=\"blob-num js-line-number\" data-line-number=\"7172\"></td>\n        <td id=\"LC7172\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">14</span>], <span class=\"pl-c1\">23</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">35309556</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7173\" class=\"blob-num js-line-number\" data-line-number=\"7173\"></td>\n        <td id=\"LC7173\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>], <span class=\"pl-c1\">4</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">1530992060</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7174\" class=\"blob-num js-line-number\" data-line-number=\"7174\"></td>\n        <td id=\"LC7174\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">4</span>], <span class=\"pl-c1\">11</span>,  <span class=\"pl-c1\">1272893353</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7175\" class=\"blob-num js-line-number\" data-line-number=\"7175\"></td>\n        <td id=\"LC7175\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">7</span>], <span class=\"pl-c1\">16</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">155497632</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7176\" class=\"blob-num js-line-number\" data-line-number=\"7176\"></td>\n        <td id=\"LC7176\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">10</span>], <span class=\"pl-c1\">23</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1094730640</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7177\" class=\"blob-num js-line-number\" data-line-number=\"7177\"></td>\n        <td id=\"LC7177\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">13</span>], <span class=\"pl-c1\">4</span> ,  <span class=\"pl-c1\">681279174</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7178\" class=\"blob-num js-line-number\" data-line-number=\"7178\"></td>\n        <td id=\"LC7178\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">0</span>], <span class=\"pl-c1\">11</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">358537222</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7179\" class=\"blob-num js-line-number\" data-line-number=\"7179\"></td>\n        <td id=\"LC7179\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span>], <span class=\"pl-c1\">16</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">722521979</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7180\" class=\"blob-num js-line-number\" data-line-number=\"7180\"></td>\n        <td id=\"LC7180\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">6</span>], <span class=\"pl-c1\">23</span>,  <span class=\"pl-c1\">76029189</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7181\" class=\"blob-num js-line-number\" data-line-number=\"7181\"></td>\n        <td id=\"LC7181\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">9</span>], <span class=\"pl-c1\">4</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">640364487</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7182\" class=\"blob-num js-line-number\" data-line-number=\"7182\"></td>\n        <td id=\"LC7182\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">12</span>], <span class=\"pl-c1\">11</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">421815835</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7183\" class=\"blob-num js-line-number\" data-line-number=\"7183\"></td>\n        <td id=\"LC7183\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">15</span>], <span class=\"pl-c1\">16</span>,  <span class=\"pl-c1\">530742520</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7184\" class=\"blob-num js-line-number\" data-line-number=\"7184\"></td>\n        <td id=\"LC7184\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_hh</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span>], <span class=\"pl-c1\">23</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">995338651</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7185\" class=\"blob-num js-line-number\" data-line-number=\"7185\"></td>\n        <td id=\"LC7185\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7186\" class=\"blob-num js-line-number\" data-line-number=\"7186\"></td>\n        <td id=\"LC7186\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">0</span>], <span class=\"pl-c1\">6</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">198630844</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7187\" class=\"blob-num js-line-number\" data-line-number=\"7187\"></td>\n        <td id=\"LC7187\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">7</span>], <span class=\"pl-c1\">10</span>,  <span class=\"pl-c1\">1126891415</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7188\" class=\"blob-num js-line-number\" data-line-number=\"7188\"></td>\n        <td id=\"LC7188\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">14</span>], <span class=\"pl-c1\">15</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1416354905</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7189\" class=\"blob-num js-line-number\" data-line-number=\"7189\"></td>\n        <td id=\"LC7189\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">5</span>], <span class=\"pl-c1\">21</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">57434055</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7190\" class=\"blob-num js-line-number\" data-line-number=\"7190\"></td>\n        <td id=\"LC7190\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">12</span>], <span class=\"pl-c1\">6</span> ,  <span class=\"pl-c1\">1700485571</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7191\" class=\"blob-num js-line-number\" data-line-number=\"7191\"></td>\n        <td id=\"LC7191\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">3</span>], <span class=\"pl-c1\">10</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1894986606</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7192\" class=\"blob-num js-line-number\" data-line-number=\"7192\"></td>\n        <td id=\"LC7192\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">10</span>], <span class=\"pl-c1\">15</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1051523</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7193\" class=\"blob-num js-line-number\" data-line-number=\"7193\"></td>\n        <td id=\"LC7193\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>], <span class=\"pl-c1\">21</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">2054922799</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7194\" class=\"blob-num js-line-number\" data-line-number=\"7194\"></td>\n        <td id=\"LC7194\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">8</span>], <span class=\"pl-c1\">6</span> ,  <span class=\"pl-c1\">1873313359</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7195\" class=\"blob-num js-line-number\" data-line-number=\"7195\"></td>\n        <td id=\"LC7195\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">15</span>], <span class=\"pl-c1\">10</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">30611744</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7196\" class=\"blob-num js-line-number\" data-line-number=\"7196\"></td>\n        <td id=\"LC7196\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">6</span>], <span class=\"pl-c1\">15</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1560198380</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7197\" class=\"blob-num js-line-number\" data-line-number=\"7197\"></td>\n        <td id=\"LC7197\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">13</span>], <span class=\"pl-c1\">21</span>,  <span class=\"pl-c1\">1309151649</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7198\" class=\"blob-num js-line-number\" data-line-number=\"7198\"></td>\n        <td id=\"LC7198\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(a, b, c, d, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">4</span>], <span class=\"pl-c1\">6</span> , <span class=\"pl-k\">-</span><span class=\"pl-c1\">145523070</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7199\" class=\"blob-num js-line-number\" data-line-number=\"7199\"></td>\n        <td id=\"LC7199\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(d, a, b, c, x[i<span class=\"pl-k\">+</span><span class=\"pl-c1\">11</span>], <span class=\"pl-c1\">10</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">1120210379</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7200\" class=\"blob-num js-line-number\" data-line-number=\"7200\"></td>\n        <td id=\"LC7200\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(c, d, a, b, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">2</span>], <span class=\"pl-c1\">15</span>,  <span class=\"pl-c1\">718787259</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7201\" class=\"blob-num js-line-number\" data-line-number=\"7201\"></td>\n        <td id=\"LC7201\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">md5_ii</span>(b, c, d, a, x[i<span class=\"pl-k\">+</span> <span class=\"pl-c1\">9</span>], <span class=\"pl-c1\">21</span>, <span class=\"pl-k\">-</span><span class=\"pl-c1\">343485551</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7202\" class=\"blob-num js-line-number\" data-line-number=\"7202\"></td>\n        <td id=\"LC7202\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7203\" class=\"blob-num js-line-number\" data-line-number=\"7203\"></td>\n        <td id=\"LC7203\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(a, olda);</td>\n      </tr>\n      <tr>\n        <td id=\"L7204\" class=\"blob-num js-line-number\" data-line-number=\"7204\"></td>\n        <td id=\"LC7204\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(b, oldb);</td>\n      </tr>\n      <tr>\n        <td id=\"L7205\" class=\"blob-num js-line-number\" data-line-number=\"7205\"></td>\n        <td id=\"LC7205\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(c, oldc);</td>\n      </tr>\n      <tr>\n        <td id=\"L7206\" class=\"blob-num js-line-number\" data-line-number=\"7206\"></td>\n        <td id=\"LC7206\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(d, oldd);</td>\n      </tr>\n      <tr>\n        <td id=\"L7207\" class=\"blob-num js-line-number\" data-line-number=\"7207\"></td>\n        <td id=\"LC7207\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7208\" class=\"blob-num js-line-number\" data-line-number=\"7208\"></td>\n        <td id=\"LC7208\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">Array</span>(a, b, c, d);</td>\n      </tr>\n      <tr>\n        <td id=\"L7209\" class=\"blob-num js-line-number\" data-line-number=\"7209\"></td>\n        <td id=\"LC7209\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7210\" class=\"blob-num js-line-number\" data-line-number=\"7210\"></td>\n        <td id=\"LC7210\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7211\" class=\"blob-num js-line-number\" data-line-number=\"7211\"></td>\n        <td id=\"LC7211\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7212\" class=\"blob-num js-line-number\" data-line-number=\"7212\"></td>\n        <td id=\"LC7212\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7213\" class=\"blob-num js-line-number\" data-line-number=\"7213\"></td>\n        <td id=\"LC7213\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">md5_cmn</span>(<span class=\"pl-smi\">q</span>, <span class=\"pl-smi\">a</span>, <span class=\"pl-smi\">b</span>, <span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">s</span>, <span class=\"pl-smi\">t</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7214\" class=\"blob-num js-line-number\" data-line-number=\"7214\"></td>\n        <td id=\"LC7214\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7215\" class=\"blob-num js-line-number\" data-line-number=\"7215\"></td>\n        <td id=\"LC7215\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">bit_rol</span>(<span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">safe_add</span>(a, q), <span class=\"pl-en\">safe_add</span>(x, t)), s),b);</td>\n      </tr>\n      <tr>\n        <td id=\"L7216\" class=\"blob-num js-line-number\" data-line-number=\"7216\"></td>\n        <td id=\"LC7216\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7217\" class=\"blob-num js-line-number\" data-line-number=\"7217\"></td>\n        <td id=\"LC7217\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">md5_ff</span>(<span class=\"pl-smi\">a</span>, <span class=\"pl-smi\">b</span>, <span class=\"pl-smi\">c</span>, <span class=\"pl-smi\">d</span>, <span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">s</span>, <span class=\"pl-smi\">t</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7218\" class=\"blob-num js-line-number\" data-line-number=\"7218\"></td>\n        <td id=\"LC7218\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7219\" class=\"blob-num js-line-number\" data-line-number=\"7219\"></td>\n        <td id=\"LC7219\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">md5_cmn</span>((b <span class=\"pl-k\">&amp;</span> c) <span class=\"pl-k\">|</span> ((<span class=\"pl-k\">~</span>b) <span class=\"pl-k\">&amp;</span> d), a, b, x, s, t);</td>\n      </tr>\n      <tr>\n        <td id=\"L7220\" class=\"blob-num js-line-number\" data-line-number=\"7220\"></td>\n        <td id=\"LC7220\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7221\" class=\"blob-num js-line-number\" data-line-number=\"7221\"></td>\n        <td id=\"LC7221\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">md5_gg</span>(<span class=\"pl-smi\">a</span>, <span class=\"pl-smi\">b</span>, <span class=\"pl-smi\">c</span>, <span class=\"pl-smi\">d</span>, <span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">s</span>, <span class=\"pl-smi\">t</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7222\" class=\"blob-num js-line-number\" data-line-number=\"7222\"></td>\n        <td id=\"LC7222\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7223\" class=\"blob-num js-line-number\" data-line-number=\"7223\"></td>\n        <td id=\"LC7223\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">md5_cmn</span>((b <span class=\"pl-k\">&amp;</span> d) <span class=\"pl-k\">|</span> (c <span class=\"pl-k\">&amp;</span> (<span class=\"pl-k\">~</span>d)), a, b, x, s, t);</td>\n      </tr>\n      <tr>\n        <td id=\"L7224\" class=\"blob-num js-line-number\" data-line-number=\"7224\"></td>\n        <td id=\"LC7224\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7225\" class=\"blob-num js-line-number\" data-line-number=\"7225\"></td>\n        <td id=\"LC7225\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">md5_hh</span>(<span class=\"pl-smi\">a</span>, <span class=\"pl-smi\">b</span>, <span class=\"pl-smi\">c</span>, <span class=\"pl-smi\">d</span>, <span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">s</span>, <span class=\"pl-smi\">t</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7226\" class=\"blob-num js-line-number\" data-line-number=\"7226\"></td>\n        <td id=\"LC7226\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7227\" class=\"blob-num js-line-number\" data-line-number=\"7227\"></td>\n        <td id=\"LC7227\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">md5_cmn</span>(b <span class=\"pl-k\">^</span> c <span class=\"pl-k\">^</span> d, a, b, x, s, t);</td>\n      </tr>\n      <tr>\n        <td id=\"L7228\" class=\"blob-num js-line-number\" data-line-number=\"7228\"></td>\n        <td id=\"LC7228\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7229\" class=\"blob-num js-line-number\" data-line-number=\"7229\"></td>\n        <td id=\"LC7229\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">md5_ii</span>(<span class=\"pl-smi\">a</span>, <span class=\"pl-smi\">b</span>, <span class=\"pl-smi\">c</span>, <span class=\"pl-smi\">d</span>, <span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">s</span>, <span class=\"pl-smi\">t</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7230\" class=\"blob-num js-line-number\" data-line-number=\"7230\"></td>\n        <td id=\"LC7230\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7231\" class=\"blob-num js-line-number\" data-line-number=\"7231\"></td>\n        <td id=\"LC7231\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">md5_cmn</span>(c <span class=\"pl-k\">^</span> (b <span class=\"pl-k\">|</span> (<span class=\"pl-k\">~</span>d)), a, b, x, s, t);</td>\n      </tr>\n      <tr>\n        <td id=\"L7232\" class=\"blob-num js-line-number\" data-line-number=\"7232\"></td>\n        <td id=\"LC7232\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7233\" class=\"blob-num js-line-number\" data-line-number=\"7233\"></td>\n        <td id=\"LC7233\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7234\" class=\"blob-num js-line-number\" data-line-number=\"7234\"></td>\n        <td id=\"LC7234\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7235\" class=\"blob-num js-line-number\" data-line-number=\"7235\"></td>\n        <td id=\"LC7235\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">safe_add</span>(<span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">y</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7236\" class=\"blob-num js-line-number\" data-line-number=\"7236\"></td>\n        <td id=\"LC7236\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7237\" class=\"blob-num js-line-number\" data-line-number=\"7237\"></td>\n        <td id=\"LC7237\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> lsw <span class=\"pl-k\">=</span> (x <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFFFF</span>) <span class=\"pl-k\">+</span> (y <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFFFF</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7238\" class=\"blob-num js-line-number\" data-line-number=\"7238\"></td>\n        <td id=\"LC7238\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> msw <span class=\"pl-k\">=</span> (x <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">16</span>) <span class=\"pl-k\">+</span> (y <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">16</span>) <span class=\"pl-k\">+</span> (lsw <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">16</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7239\" class=\"blob-num js-line-number\" data-line-number=\"7239\"></td>\n        <td id=\"LC7239\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (msw <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">16</span>) <span class=\"pl-k\">|</span> (lsw <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFFFF</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7240\" class=\"blob-num js-line-number\" data-line-number=\"7240\"></td>\n        <td id=\"LC7240\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7241\" class=\"blob-num js-line-number\" data-line-number=\"7241\"></td>\n        <td id=\"LC7241\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7242\" class=\"blob-num js-line-number\" data-line-number=\"7242\"></td>\n        <td id=\"LC7242\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7243\" class=\"blob-num js-line-number\" data-line-number=\"7243\"></td>\n        <td id=\"LC7243\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">bit_rol</span>(<span class=\"pl-smi\">num</span>, <span class=\"pl-smi\">cnt</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7244\" class=\"blob-num js-line-number\" data-line-number=\"7244\"></td>\n        <td id=\"LC7244\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7245\" class=\"blob-num js-line-number\" data-line-number=\"7245\"></td>\n        <td id=\"LC7245\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (num <span class=\"pl-k\">&lt;&lt;</span> cnt) <span class=\"pl-k\">|</span> (num <span class=\"pl-k\">&gt;&gt;&gt;</span> (<span class=\"pl-c1\">32</span> <span class=\"pl-k\">-</span> cnt));</td>\n      </tr>\n      <tr>\n        <td id=\"L7246\" class=\"blob-num js-line-number\" data-line-number=\"7246\"></td>\n        <td id=\"LC7246\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7247\" class=\"blob-num js-line-number\" data-line-number=\"7247\"></td>\n        <td id=\"LC7247\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7248\" class=\"blob-num js-line-number\" data-line-number=\"7248\"></td>\n        <td id=\"LC7248\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-en\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">md5</span>(<span class=\"pl-smi\">buf</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7249\" class=\"blob-num js-line-number\" data-line-number=\"7249\"></td>\n        <td id=\"LC7249\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">helpers</span>.<span class=\"pl-c1\">hash</span>(buf, core_md5, <span class=\"pl-c1\">16</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7250\" class=\"blob-num js-line-number\" data-line-number=\"7250\"></td>\n        <td id=\"LC7250\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7251\" class=\"blob-num js-line-number\" data-line-number=\"7251\"></td>\n        <td id=\"LC7251\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7252\" class=\"blob-num js-line-number\" data-line-number=\"7252\"></td>\n        <td id=\"LC7252\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./helpers<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">50</span>}],<span class=\"pl-c1\">53</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L7253\" class=\"blob-num js-line-number\" data-line-number=\"7253\"></td>\n        <td id=\"LC7253\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L7254\" class=\"blob-num js-line-number\" data-line-number=\"7254\"></td>\n        <td id=\"LC7254\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> _global <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7255\" class=\"blob-num js-line-number\" data-line-number=\"7255\"></td>\n        <td id=\"LC7255\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7256\" class=\"blob-num js-line-number\" data-line-number=\"7256\"></td>\n        <td id=\"LC7256\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> mathRNG, whatwgRNG;</td>\n      </tr>\n      <tr>\n        <td id=\"L7257\" class=\"blob-num js-line-number\" data-line-number=\"7257\"></td>\n        <td id=\"LC7257\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7258\" class=\"blob-num js-line-number\" data-line-number=\"7258\"></td>\n        <td id=\"LC7258\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">mathRNG</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">size</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7259\" class=\"blob-num js-line-number\" data-line-number=\"7259\"></td>\n        <td id=\"LC7259\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> bytes <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(size);</td>\n      </tr>\n      <tr>\n        <td id=\"L7260\" class=\"blob-num js-line-number\" data-line-number=\"7260\"></td>\n        <td id=\"LC7260\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L7261\" class=\"blob-num js-line-number\" data-line-number=\"7261\"></td>\n        <td id=\"LC7261\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7262\" class=\"blob-num js-line-number\" data-line-number=\"7262\"></td>\n        <td id=\"LC7262\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, r; i <span class=\"pl-k\">&lt;</span> size; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7263\" class=\"blob-num js-line-number\" data-line-number=\"7263\"></td>\n        <td id=\"LC7263\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> ((i <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x03</span>) <span class=\"pl-k\">==</span> <span class=\"pl-c1\">0</span>) r <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">random</span>() <span class=\"pl-k\">*</span> <span class=\"pl-c1\">0x100000000</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7264\" class=\"blob-num js-line-number\" data-line-number=\"7264\"></td>\n        <td id=\"LC7264\" class=\"blob-code blob-code-inner js-file-line\">      bytes[i] <span class=\"pl-k\">=</span> r <span class=\"pl-k\">&gt;&gt;&gt;</span> ((i <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x03</span>) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">3</span>) <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xff</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7265\" class=\"blob-num js-line-number\" data-line-number=\"7265\"></td>\n        <td id=\"LC7265\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7266\" class=\"blob-num js-line-number\" data-line-number=\"7266\"></td>\n        <td id=\"LC7266\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7267\" class=\"blob-num js-line-number\" data-line-number=\"7267\"></td>\n        <td id=\"LC7267\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> bytes;</td>\n      </tr>\n      <tr>\n        <td id=\"L7268\" class=\"blob-num js-line-number\" data-line-number=\"7268\"></td>\n        <td id=\"LC7268\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7269\" class=\"blob-num js-line-number\" data-line-number=\"7269\"></td>\n        <td id=\"LC7269\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7270\" class=\"blob-num js-line-number\" data-line-number=\"7270\"></td>\n        <td id=\"LC7270\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">_global</span>.<span class=\"pl-c1\">crypto</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">crypto</span>.<span class=\"pl-smi\">getRandomValues</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7271\" class=\"blob-num js-line-number\" data-line-number=\"7271\"></td>\n        <td id=\"LC7271\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">whatwgRNG</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">size</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7272\" class=\"blob-num js-line-number\" data-line-number=\"7272\"></td>\n        <td id=\"LC7272\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> bytes <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Uint8Array</span>(size);</td>\n      </tr>\n      <tr>\n        <td id=\"L7273\" class=\"blob-num js-line-number\" data-line-number=\"7273\"></td>\n        <td id=\"LC7273\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">crypto</span>.<span class=\"pl-en\">getRandomValues</span>(bytes);</td>\n      </tr>\n      <tr>\n        <td id=\"L7274\" class=\"blob-num js-line-number\" data-line-number=\"7274\"></td>\n        <td id=\"LC7274\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> bytes;</td>\n      </tr>\n      <tr>\n        <td id=\"L7275\" class=\"blob-num js-line-number\" data-line-number=\"7275\"></td>\n        <td id=\"LC7275\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7276\" class=\"blob-num js-line-number\" data-line-number=\"7276\"></td>\n        <td id=\"LC7276\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7277\" class=\"blob-num js-line-number\" data-line-number=\"7277\"></td>\n        <td id=\"LC7277\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7278\" class=\"blob-num js-line-number\" data-line-number=\"7278\"></td>\n        <td id=\"LC7278\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> whatwgRNG <span class=\"pl-k\">||</span> mathRNG;</td>\n      </tr>\n      <tr>\n        <td id=\"L7279\" class=\"blob-num js-line-number\" data-line-number=\"7279\"></td>\n        <td id=\"LC7279\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7280\" class=\"blob-num js-line-number\" data-line-number=\"7280\"></td>\n        <td id=\"LC7280\" class=\"blob-code blob-code-inner js-file-line\">}())</td>\n      </tr>\n      <tr>\n        <td id=\"L7281\" class=\"blob-num js-line-number\" data-line-number=\"7281\"></td>\n        <td id=\"LC7281\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7282\" class=\"blob-num js-line-number\" data-line-number=\"7282\"></td>\n        <td id=\"LC7282\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">54</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L7283\" class=\"blob-num js-line-number\" data-line-number=\"7283\"></td>\n        <td id=\"LC7283\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7284\" class=\"blob-num js-line-number\" data-line-number=\"7284\"></td>\n        <td id=\"LC7284\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7285\" class=\"blob-num js-line-number\" data-line-number=\"7285\"></td>\n        <td id=\"LC7285\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> helpers <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./helpers<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7286\" class=\"blob-num js-line-number\" data-line-number=\"7286\"></td>\n        <td id=\"LC7286\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7287\" class=\"blob-num js-line-number\" data-line-number=\"7287\"></td>\n        <td id=\"LC7287\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7288\" class=\"blob-num js-line-number\" data-line-number=\"7288\"></td>\n        <td id=\"LC7288\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">core_sha1</span>(<span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">len</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7289\" class=\"blob-num js-line-number\" data-line-number=\"7289\"></td>\n        <td id=\"LC7289\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7290\" class=\"blob-num js-line-number\" data-line-number=\"7290\"></td>\n        <td id=\"LC7290\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7291\" class=\"blob-num js-line-number\" data-line-number=\"7291\"></td>\n        <td id=\"LC7291\" class=\"blob-code blob-code-inner js-file-line\">  x[len <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">5</span>] <span class=\"pl-k\">|=</span> <span class=\"pl-c1\">0x80</span> <span class=\"pl-k\">&lt;&lt;</span> (<span class=\"pl-c1\">24</span> <span class=\"pl-k\">-</span> len <span class=\"pl-k\">%</span> <span class=\"pl-c1\">32</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7292\" class=\"blob-num js-line-number\" data-line-number=\"7292\"></td>\n        <td id=\"LC7292\" class=\"blob-code blob-code-inner js-file-line\">  x[((len <span class=\"pl-k\">+</span> <span class=\"pl-c1\">64</span> <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">9</span>) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">4</span>) <span class=\"pl-k\">+</span> <span class=\"pl-c1\">15</span>] <span class=\"pl-k\">=</span> len;</td>\n      </tr>\n      <tr>\n        <td id=\"L7293\" class=\"blob-num js-line-number\" data-line-number=\"7293\"></td>\n        <td id=\"LC7293\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7294\" class=\"blob-num js-line-number\" data-line-number=\"7294\"></td>\n        <td id=\"LC7294\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> w <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Array</span>(<span class=\"pl-c1\">80</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7295\" class=\"blob-num js-line-number\" data-line-number=\"7295\"></td>\n        <td id=\"LC7295\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> a <span class=\"pl-k\">=</span>  <span class=\"pl-c1\">1732584193</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7296\" class=\"blob-num js-line-number\" data-line-number=\"7296\"></td>\n        <td id=\"LC7296\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> b <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">271733879</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7297\" class=\"blob-num js-line-number\" data-line-number=\"7297\"></td>\n        <td id=\"LC7297\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> c <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1732584194</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7298\" class=\"blob-num js-line-number\" data-line-number=\"7298\"></td>\n        <td id=\"LC7298\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> d <span class=\"pl-k\">=</span>  <span class=\"pl-c1\">271733878</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7299\" class=\"blob-num js-line-number\" data-line-number=\"7299\"></td>\n        <td id=\"LC7299\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> e <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1009589776</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7300\" class=\"blob-num js-line-number\" data-line-number=\"7300\"></td>\n        <td id=\"LC7300\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7301\" class=\"blob-num js-line-number\" data-line-number=\"7301\"></td>\n        <td id=\"LC7301\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span>(<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">x</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">+=</span> <span class=\"pl-c1\">16</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7302\" class=\"blob-num js-line-number\" data-line-number=\"7302\"></td>\n        <td id=\"LC7302\" class=\"blob-code blob-code-inner js-file-line\">  {</td>\n      </tr>\n      <tr>\n        <td id=\"L7303\" class=\"blob-num js-line-number\" data-line-number=\"7303\"></td>\n        <td id=\"LC7303\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> olda <span class=\"pl-k\">=</span> a;</td>\n      </tr>\n      <tr>\n        <td id=\"L7304\" class=\"blob-num js-line-number\" data-line-number=\"7304\"></td>\n        <td id=\"LC7304\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> oldb <span class=\"pl-k\">=</span> b;</td>\n      </tr>\n      <tr>\n        <td id=\"L7305\" class=\"blob-num js-line-number\" data-line-number=\"7305\"></td>\n        <td id=\"LC7305\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> oldc <span class=\"pl-k\">=</span> c;</td>\n      </tr>\n      <tr>\n        <td id=\"L7306\" class=\"blob-num js-line-number\" data-line-number=\"7306\"></td>\n        <td id=\"LC7306\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> oldd <span class=\"pl-k\">=</span> d;</td>\n      </tr>\n      <tr>\n        <td id=\"L7307\" class=\"blob-num js-line-number\" data-line-number=\"7307\"></td>\n        <td id=\"LC7307\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> olde <span class=\"pl-k\">=</span> e;</td>\n      </tr>\n      <tr>\n        <td id=\"L7308\" class=\"blob-num js-line-number\" data-line-number=\"7308\"></td>\n        <td id=\"LC7308\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7309\" class=\"blob-num js-line-number\" data-line-number=\"7309\"></td>\n        <td id=\"LC7309\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span>(<span class=\"pl-k\">var</span> j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; j <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">80</span>; j<span class=\"pl-k\">++</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7310\" class=\"blob-num js-line-number\" data-line-number=\"7310\"></td>\n        <td id=\"LC7310\" class=\"blob-code blob-code-inner js-file-line\">    {</td>\n      </tr>\n      <tr>\n        <td id=\"L7311\" class=\"blob-num js-line-number\" data-line-number=\"7311\"></td>\n        <td id=\"LC7311\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span>(j <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">16</span>) w[j] <span class=\"pl-k\">=</span> x[i <span class=\"pl-k\">+</span> j];</td>\n      </tr>\n      <tr>\n        <td id=\"L7312\" class=\"blob-num js-line-number\" data-line-number=\"7312\"></td>\n        <td id=\"LC7312\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">else</span> w[j] <span class=\"pl-k\">=</span> <span class=\"pl-en\">rol</span>(w[j<span class=\"pl-k\">-</span><span class=\"pl-c1\">3</span>] <span class=\"pl-k\">^</span> w[j<span class=\"pl-k\">-</span><span class=\"pl-c1\">8</span>] <span class=\"pl-k\">^</span> w[j<span class=\"pl-k\">-</span><span class=\"pl-c1\">14</span>] <span class=\"pl-k\">^</span> w[j<span class=\"pl-k\">-</span><span class=\"pl-c1\">16</span>], <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7313\" class=\"blob-num js-line-number\" data-line-number=\"7313\"></td>\n        <td id=\"LC7313\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> t <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">rol</span>(a, <span class=\"pl-c1\">5</span>), <span class=\"pl-en\">sha1_ft</span>(j, b, c, d)),</td>\n      </tr>\n      <tr>\n        <td id=\"L7314\" class=\"blob-num js-line-number\" data-line-number=\"7314\"></td>\n        <td id=\"LC7314\" class=\"blob-code blob-code-inner js-file-line\">                       <span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">safe_add</span>(e, w[j]), <span class=\"pl-en\">sha1_kt</span>(j)));</td>\n      </tr>\n      <tr>\n        <td id=\"L7315\" class=\"blob-num js-line-number\" data-line-number=\"7315\"></td>\n        <td id=\"LC7315\" class=\"blob-code blob-code-inner js-file-line\">      e <span class=\"pl-k\">=</span> d;</td>\n      </tr>\n      <tr>\n        <td id=\"L7316\" class=\"blob-num js-line-number\" data-line-number=\"7316\"></td>\n        <td id=\"LC7316\" class=\"blob-code blob-code-inner js-file-line\">      d <span class=\"pl-k\">=</span> c;</td>\n      </tr>\n      <tr>\n        <td id=\"L7317\" class=\"blob-num js-line-number\" data-line-number=\"7317\"></td>\n        <td id=\"LC7317\" class=\"blob-code blob-code-inner js-file-line\">      c <span class=\"pl-k\">=</span> <span class=\"pl-en\">rol</span>(b, <span class=\"pl-c1\">30</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7318\" class=\"blob-num js-line-number\" data-line-number=\"7318\"></td>\n        <td id=\"LC7318\" class=\"blob-code blob-code-inner js-file-line\">      b <span class=\"pl-k\">=</span> a;</td>\n      </tr>\n      <tr>\n        <td id=\"L7319\" class=\"blob-num js-line-number\" data-line-number=\"7319\"></td>\n        <td id=\"LC7319\" class=\"blob-code blob-code-inner js-file-line\">      a <span class=\"pl-k\">=</span> t;</td>\n      </tr>\n      <tr>\n        <td id=\"L7320\" class=\"blob-num js-line-number\" data-line-number=\"7320\"></td>\n        <td id=\"LC7320\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7321\" class=\"blob-num js-line-number\" data-line-number=\"7321\"></td>\n        <td id=\"LC7321\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7322\" class=\"blob-num js-line-number\" data-line-number=\"7322\"></td>\n        <td id=\"LC7322\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(a, olda);</td>\n      </tr>\n      <tr>\n        <td id=\"L7323\" class=\"blob-num js-line-number\" data-line-number=\"7323\"></td>\n        <td id=\"LC7323\" class=\"blob-code blob-code-inner js-file-line\">    b <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(b, oldb);</td>\n      </tr>\n      <tr>\n        <td id=\"L7324\" class=\"blob-num js-line-number\" data-line-number=\"7324\"></td>\n        <td id=\"LC7324\" class=\"blob-code blob-code-inner js-file-line\">    c <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(c, oldc);</td>\n      </tr>\n      <tr>\n        <td id=\"L7325\" class=\"blob-num js-line-number\" data-line-number=\"7325\"></td>\n        <td id=\"LC7325\" class=\"blob-code blob-code-inner js-file-line\">    d <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(d, oldd);</td>\n      </tr>\n      <tr>\n        <td id=\"L7326\" class=\"blob-num js-line-number\" data-line-number=\"7326\"></td>\n        <td id=\"LC7326\" class=\"blob-code blob-code-inner js-file-line\">    e <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(e, olde);</td>\n      </tr>\n      <tr>\n        <td id=\"L7327\" class=\"blob-num js-line-number\" data-line-number=\"7327\"></td>\n        <td id=\"LC7327\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7328\" class=\"blob-num js-line-number\" data-line-number=\"7328\"></td>\n        <td id=\"LC7328\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">Array</span>(a, b, c, d, e);</td>\n      </tr>\n      <tr>\n        <td id=\"L7329\" class=\"blob-num js-line-number\" data-line-number=\"7329\"></td>\n        <td id=\"LC7329\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7330\" class=\"blob-num js-line-number\" data-line-number=\"7330\"></td>\n        <td id=\"LC7330\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7331\" class=\"blob-num js-line-number\" data-line-number=\"7331\"></td>\n        <td id=\"LC7331\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7332\" class=\"blob-num js-line-number\" data-line-number=\"7332\"></td>\n        <td id=\"LC7332\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7333\" class=\"blob-num js-line-number\" data-line-number=\"7333\"></td>\n        <td id=\"LC7333\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">sha1_ft</span>(<span class=\"pl-smi\">t</span>, <span class=\"pl-smi\">b</span>, <span class=\"pl-smi\">c</span>, <span class=\"pl-smi\">d</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7334\" class=\"blob-num js-line-number\" data-line-number=\"7334\"></td>\n        <td id=\"LC7334\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7335\" class=\"blob-num js-line-number\" data-line-number=\"7335\"></td>\n        <td id=\"LC7335\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span>(t <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">20</span>) <span class=\"pl-k\">return</span> (b <span class=\"pl-k\">&amp;</span> c) <span class=\"pl-k\">|</span> ((<span class=\"pl-k\">~</span>b) <span class=\"pl-k\">&amp;</span> d);</td>\n      </tr>\n      <tr>\n        <td id=\"L7336\" class=\"blob-num js-line-number\" data-line-number=\"7336\"></td>\n        <td id=\"LC7336\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span>(t <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">40</span>) <span class=\"pl-k\">return</span> b <span class=\"pl-k\">^</span> c <span class=\"pl-k\">^</span> d;</td>\n      </tr>\n      <tr>\n        <td id=\"L7337\" class=\"blob-num js-line-number\" data-line-number=\"7337\"></td>\n        <td id=\"LC7337\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span>(t <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">60</span>) <span class=\"pl-k\">return</span> (b <span class=\"pl-k\">&amp;</span> c) <span class=\"pl-k\">|</span> (b <span class=\"pl-k\">&amp;</span> d) <span class=\"pl-k\">|</span> (c <span class=\"pl-k\">&amp;</span> d);</td>\n      </tr>\n      <tr>\n        <td id=\"L7338\" class=\"blob-num js-line-number\" data-line-number=\"7338\"></td>\n        <td id=\"LC7338\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> b <span class=\"pl-k\">^</span> c <span class=\"pl-k\">^</span> d;</td>\n      </tr>\n      <tr>\n        <td id=\"L7339\" class=\"blob-num js-line-number\" data-line-number=\"7339\"></td>\n        <td id=\"LC7339\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7340\" class=\"blob-num js-line-number\" data-line-number=\"7340\"></td>\n        <td id=\"LC7340\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7341\" class=\"blob-num js-line-number\" data-line-number=\"7341\"></td>\n        <td id=\"LC7341\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7342\" class=\"blob-num js-line-number\" data-line-number=\"7342\"></td>\n        <td id=\"LC7342\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">sha1_kt</span>(<span class=\"pl-smi\">t</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7343\" class=\"blob-num js-line-number\" data-line-number=\"7343\"></td>\n        <td id=\"LC7343\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7344\" class=\"blob-num js-line-number\" data-line-number=\"7344\"></td>\n        <td id=\"LC7344\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (t <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">20</span>) <span class=\"pl-k\">?</span>  <span class=\"pl-c1\">1518500249</span> <span class=\"pl-k\">:</span> (t <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">40</span>) <span class=\"pl-k\">?</span>  <span class=\"pl-c1\">1859775393</span> <span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7345\" class=\"blob-num js-line-number\" data-line-number=\"7345\"></td>\n        <td id=\"LC7345\" class=\"blob-code blob-code-inner js-file-line\">         (t <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">60</span>) <span class=\"pl-k\">?</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1894007588</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">899497514</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7346\" class=\"blob-num js-line-number\" data-line-number=\"7346\"></td>\n        <td id=\"LC7346\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7347\" class=\"blob-num js-line-number\" data-line-number=\"7347\"></td>\n        <td id=\"LC7347\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7348\" class=\"blob-num js-line-number\" data-line-number=\"7348\"></td>\n        <td id=\"LC7348\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7349\" class=\"blob-num js-line-number\" data-line-number=\"7349\"></td>\n        <td id=\"LC7349\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">safe_add</span>(<span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">y</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7350\" class=\"blob-num js-line-number\" data-line-number=\"7350\"></td>\n        <td id=\"LC7350\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7351\" class=\"blob-num js-line-number\" data-line-number=\"7351\"></td>\n        <td id=\"LC7351\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> lsw <span class=\"pl-k\">=</span> (x <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFFFF</span>) <span class=\"pl-k\">+</span> (y <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFFFF</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7352\" class=\"blob-num js-line-number\" data-line-number=\"7352\"></td>\n        <td id=\"LC7352\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> msw <span class=\"pl-k\">=</span> (x <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">16</span>) <span class=\"pl-k\">+</span> (y <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">16</span>) <span class=\"pl-k\">+</span> (lsw <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">16</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7353\" class=\"blob-num js-line-number\" data-line-number=\"7353\"></td>\n        <td id=\"LC7353\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (msw <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">16</span>) <span class=\"pl-k\">|</span> (lsw <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFFFF</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7354\" class=\"blob-num js-line-number\" data-line-number=\"7354\"></td>\n        <td id=\"LC7354\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7355\" class=\"blob-num js-line-number\" data-line-number=\"7355\"></td>\n        <td id=\"LC7355\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7356\" class=\"blob-num js-line-number\" data-line-number=\"7356\"></td>\n        <td id=\"LC7356\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7357\" class=\"blob-num js-line-number\" data-line-number=\"7357\"></td>\n        <td id=\"LC7357\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">rol</span>(<span class=\"pl-smi\">num</span>, <span class=\"pl-smi\">cnt</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7358\" class=\"blob-num js-line-number\" data-line-number=\"7358\"></td>\n        <td id=\"LC7358\" class=\"blob-code blob-code-inner js-file-line\">{</td>\n      </tr>\n      <tr>\n        <td id=\"L7359\" class=\"blob-num js-line-number\" data-line-number=\"7359\"></td>\n        <td id=\"LC7359\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (num <span class=\"pl-k\">&lt;&lt;</span> cnt) <span class=\"pl-k\">|</span> (num <span class=\"pl-k\">&gt;&gt;&gt;</span> (<span class=\"pl-c1\">32</span> <span class=\"pl-k\">-</span> cnt));</td>\n      </tr>\n      <tr>\n        <td id=\"L7360\" class=\"blob-num js-line-number\" data-line-number=\"7360\"></td>\n        <td id=\"LC7360\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7361\" class=\"blob-num js-line-number\" data-line-number=\"7361\"></td>\n        <td id=\"LC7361\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7362\" class=\"blob-num js-line-number\" data-line-number=\"7362\"></td>\n        <td id=\"LC7362\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-en\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">sha1</span>(<span class=\"pl-smi\">buf</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7363\" class=\"blob-num js-line-number\" data-line-number=\"7363\"></td>\n        <td id=\"LC7363\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">helpers</span>.<span class=\"pl-c1\">hash</span>(buf, core_sha1, <span class=\"pl-c1\">20</span>, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7364\" class=\"blob-num js-line-number\" data-line-number=\"7364\"></td>\n        <td id=\"LC7364\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7365\" class=\"blob-num js-line-number\" data-line-number=\"7365\"></td>\n        <td id=\"LC7365\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7366\" class=\"blob-num js-line-number\" data-line-number=\"7366\"></td>\n        <td id=\"LC7366\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./helpers<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">50</span>}],<span class=\"pl-c1\">55</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L7367\" class=\"blob-num js-line-number\" data-line-number=\"7367\"></td>\n        <td id=\"LC7367\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7368\" class=\"blob-num js-line-number\" data-line-number=\"7368\"></td>\n        <td id=\"LC7368\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7369\" class=\"blob-num js-line-number\" data-line-number=\"7369\"></td>\n        <td id=\"LC7369\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7370\" class=\"blob-num js-line-number\" data-line-number=\"7370\"></td>\n        <td id=\"LC7370\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> helpers <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./helpers<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7371\" class=\"blob-num js-line-number\" data-line-number=\"7371\"></td>\n        <td id=\"LC7371\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7372\" class=\"blob-num js-line-number\" data-line-number=\"7372\"></td>\n        <td id=\"LC7372\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-en\">safe_add</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">y</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7373\" class=\"blob-num js-line-number\" data-line-number=\"7373\"></td>\n        <td id=\"LC7373\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> lsw <span class=\"pl-k\">=</span> (x <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFFFF</span>) <span class=\"pl-k\">+</span> (y <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFFFF</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7374\" class=\"blob-num js-line-number\" data-line-number=\"7374\"></td>\n        <td id=\"LC7374\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> msw <span class=\"pl-k\">=</span> (x <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">16</span>) <span class=\"pl-k\">+</span> (y <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">16</span>) <span class=\"pl-k\">+</span> (lsw <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">16</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7375\" class=\"blob-num js-line-number\" data-line-number=\"7375\"></td>\n        <td id=\"LC7375\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (msw <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">16</span>) <span class=\"pl-k\">|</span> (lsw <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFFFF</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7376\" class=\"blob-num js-line-number\" data-line-number=\"7376\"></td>\n        <td id=\"LC7376\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7377\" class=\"blob-num js-line-number\" data-line-number=\"7377\"></td>\n        <td id=\"LC7377\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7378\" class=\"blob-num js-line-number\" data-line-number=\"7378\"></td>\n        <td id=\"LC7378\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-en\">S</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">X</span>, <span class=\"pl-smi\">n</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7379\" class=\"blob-num js-line-number\" data-line-number=\"7379\"></td>\n        <td id=\"LC7379\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (X <span class=\"pl-k\">&gt;&gt;&gt;</span> n) <span class=\"pl-k\">|</span> (X <span class=\"pl-k\">&lt;&lt;</span> (<span class=\"pl-c1\">32</span> <span class=\"pl-k\">-</span> n));</td>\n      </tr>\n      <tr>\n        <td id=\"L7380\" class=\"blob-num js-line-number\" data-line-number=\"7380\"></td>\n        <td id=\"LC7380\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7381\" class=\"blob-num js-line-number\" data-line-number=\"7381\"></td>\n        <td id=\"LC7381\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7382\" class=\"blob-num js-line-number\" data-line-number=\"7382\"></td>\n        <td id=\"LC7382\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-en\">R</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">X</span>, <span class=\"pl-smi\">n</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7383\" class=\"blob-num js-line-number\" data-line-number=\"7383\"></td>\n        <td id=\"LC7383\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (X <span class=\"pl-k\">&gt;&gt;&gt;</span> n);</td>\n      </tr>\n      <tr>\n        <td id=\"L7384\" class=\"blob-num js-line-number\" data-line-number=\"7384\"></td>\n        <td id=\"LC7384\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7385\" class=\"blob-num js-line-number\" data-line-number=\"7385\"></td>\n        <td id=\"LC7385\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7386\" class=\"blob-num js-line-number\" data-line-number=\"7386\"></td>\n        <td id=\"LC7386\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-en\">Ch</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">y</span>, <span class=\"pl-smi\">z</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7387\" class=\"blob-num js-line-number\" data-line-number=\"7387\"></td>\n        <td id=\"LC7387\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> ((x <span class=\"pl-k\">&amp;</span> y) <span class=\"pl-k\">^</span> ((<span class=\"pl-k\">~</span>x) <span class=\"pl-k\">&amp;</span> z));</td>\n      </tr>\n      <tr>\n        <td id=\"L7388\" class=\"blob-num js-line-number\" data-line-number=\"7388\"></td>\n        <td id=\"LC7388\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7389\" class=\"blob-num js-line-number\" data-line-number=\"7389\"></td>\n        <td id=\"LC7389\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7390\" class=\"blob-num js-line-number\" data-line-number=\"7390\"></td>\n        <td id=\"LC7390\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-en\">Maj</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">x</span>, <span class=\"pl-smi\">y</span>, <span class=\"pl-smi\">z</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7391\" class=\"blob-num js-line-number\" data-line-number=\"7391\"></td>\n        <td id=\"LC7391\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> ((x <span class=\"pl-k\">&amp;</span> y) <span class=\"pl-k\">^</span> (x <span class=\"pl-k\">&amp;</span> z) <span class=\"pl-k\">^</span> (y <span class=\"pl-k\">&amp;</span> z));</td>\n      </tr>\n      <tr>\n        <td id=\"L7392\" class=\"blob-num js-line-number\" data-line-number=\"7392\"></td>\n        <td id=\"LC7392\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7393\" class=\"blob-num js-line-number\" data-line-number=\"7393\"></td>\n        <td id=\"LC7393\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7394\" class=\"blob-num js-line-number\" data-line-number=\"7394\"></td>\n        <td id=\"LC7394\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-en\">Sigma0256</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">x</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7395\" class=\"blob-num js-line-number\" data-line-number=\"7395\"></td>\n        <td id=\"LC7395\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (<span class=\"pl-en\">S</span>(x, <span class=\"pl-c1\">2</span>) <span class=\"pl-k\">^</span> <span class=\"pl-en\">S</span>(x, <span class=\"pl-c1\">13</span>) <span class=\"pl-k\">^</span> <span class=\"pl-en\">S</span>(x, <span class=\"pl-c1\">22</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L7396\" class=\"blob-num js-line-number\" data-line-number=\"7396\"></td>\n        <td id=\"LC7396\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7397\" class=\"blob-num js-line-number\" data-line-number=\"7397\"></td>\n        <td id=\"LC7397\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7398\" class=\"blob-num js-line-number\" data-line-number=\"7398\"></td>\n        <td id=\"LC7398\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-en\">Sigma1256</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">x</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7399\" class=\"blob-num js-line-number\" data-line-number=\"7399\"></td>\n        <td id=\"LC7399\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (<span class=\"pl-en\">S</span>(x, <span class=\"pl-c1\">6</span>) <span class=\"pl-k\">^</span> <span class=\"pl-en\">S</span>(x, <span class=\"pl-c1\">11</span>) <span class=\"pl-k\">^</span> <span class=\"pl-en\">S</span>(x, <span class=\"pl-c1\">25</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L7400\" class=\"blob-num js-line-number\" data-line-number=\"7400\"></td>\n        <td id=\"LC7400\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7401\" class=\"blob-num js-line-number\" data-line-number=\"7401\"></td>\n        <td id=\"LC7401\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7402\" class=\"blob-num js-line-number\" data-line-number=\"7402\"></td>\n        <td id=\"LC7402\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-en\">Gamma0256</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">x</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7403\" class=\"blob-num js-line-number\" data-line-number=\"7403\"></td>\n        <td id=\"LC7403\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (<span class=\"pl-en\">S</span>(x, <span class=\"pl-c1\">7</span>) <span class=\"pl-k\">^</span> <span class=\"pl-en\">S</span>(x, <span class=\"pl-c1\">18</span>) <span class=\"pl-k\">^</span> <span class=\"pl-en\">R</span>(x, <span class=\"pl-c1\">3</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L7404\" class=\"blob-num js-line-number\" data-line-number=\"7404\"></td>\n        <td id=\"LC7404\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7405\" class=\"blob-num js-line-number\" data-line-number=\"7405\"></td>\n        <td id=\"LC7405\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7406\" class=\"blob-num js-line-number\" data-line-number=\"7406\"></td>\n        <td id=\"LC7406\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-en\">Gamma1256</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">x</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7407\" class=\"blob-num js-line-number\" data-line-number=\"7407\"></td>\n        <td id=\"LC7407\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (<span class=\"pl-en\">S</span>(x, <span class=\"pl-c1\">17</span>) <span class=\"pl-k\">^</span> <span class=\"pl-en\">S</span>(x, <span class=\"pl-c1\">19</span>) <span class=\"pl-k\">^</span> <span class=\"pl-en\">R</span>(x, <span class=\"pl-c1\">10</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L7408\" class=\"blob-num js-line-number\" data-line-number=\"7408\"></td>\n        <td id=\"LC7408\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7409\" class=\"blob-num js-line-number\" data-line-number=\"7409\"></td>\n        <td id=\"LC7409\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7410\" class=\"blob-num js-line-number\" data-line-number=\"7410\"></td>\n        <td id=\"LC7410\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-en\">core_sha256</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">m</span>, <span class=\"pl-smi\">l</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7411\" class=\"blob-num js-line-number\" data-line-number=\"7411\"></td>\n        <td id=\"LC7411\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> K <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(<span class=\"pl-c1\">0x428A2F98</span>,<span class=\"pl-c1\">0x71374491</span>,<span class=\"pl-c1\">0xB5C0FBCF</span>,<span class=\"pl-c1\">0xE9B5DBA5</span>,<span class=\"pl-c1\">0x3956C25B</span>,<span class=\"pl-c1\">0x59F111F1</span>,<span class=\"pl-c1\">0x923F82A4</span>,<span class=\"pl-c1\">0xAB1C5ED5</span>,<span class=\"pl-c1\">0xD807AA98</span>,<span class=\"pl-c1\">0x12835B01</span>,<span class=\"pl-c1\">0x243185BE</span>,<span class=\"pl-c1\">0x550C7DC3</span>,<span class=\"pl-c1\">0x72BE5D74</span>,<span class=\"pl-c1\">0x80DEB1FE</span>,<span class=\"pl-c1\">0x9BDC06A7</span>,<span class=\"pl-c1\">0xC19BF174</span>,<span class=\"pl-c1\">0xE49B69C1</span>,<span class=\"pl-c1\">0xEFBE4786</span>,<span class=\"pl-c1\">0xFC19DC6</span>,<span class=\"pl-c1\">0x240CA1CC</span>,<span class=\"pl-c1\">0x2DE92C6F</span>,<span class=\"pl-c1\">0x4A7484AA</span>,<span class=\"pl-c1\">0x5CB0A9DC</span>,<span class=\"pl-c1\">0x76F988DA</span>,<span class=\"pl-c1\">0x983E5152</span>,<span class=\"pl-c1\">0xA831C66D</span>,<span class=\"pl-c1\">0xB00327C8</span>,<span class=\"pl-c1\">0xBF597FC7</span>,<span class=\"pl-c1\">0xC6E00BF3</span>,<span class=\"pl-c1\">0xD5A79147</span>,<span class=\"pl-c1\">0x6CA6351</span>,<span class=\"pl-c1\">0x14292967</span>,<span class=\"pl-c1\">0x27B70A85</span>,<span class=\"pl-c1\">0x2E1B2138</span>,<span class=\"pl-c1\">0x4D2C6DFC</span>,<span class=\"pl-c1\">0x53380D13</span>,<span class=\"pl-c1\">0x650A7354</span>,<span class=\"pl-c1\">0x766A0ABB</span>,<span class=\"pl-c1\">0x81C2C92E</span>,<span class=\"pl-c1\">0x92722C85</span>,<span class=\"pl-c1\">0xA2BFE8A1</span>,<span class=\"pl-c1\">0xA81A664B</span>,<span class=\"pl-c1\">0xC24B8B70</span>,<span class=\"pl-c1\">0xC76C51A3</span>,<span class=\"pl-c1\">0xD192E819</span>,<span class=\"pl-c1\">0xD6990624</span>,<span class=\"pl-c1\">0xF40E3585</span>,<span class=\"pl-c1\">0x106AA070</span>,<span class=\"pl-c1\">0x19A4C116</span>,<span class=\"pl-c1\">0x1E376C08</span>,<span class=\"pl-c1\">0x2748774C</span>,<span class=\"pl-c1\">0x34B0BCB5</span>,<span class=\"pl-c1\">0x391C0CB3</span>,<span class=\"pl-c1\">0x4ED8AA4A</span>,<span class=\"pl-c1\">0x5B9CCA4F</span>,<span class=\"pl-c1\">0x682E6FF3</span>,<span class=\"pl-c1\">0x748F82EE</span>,<span class=\"pl-c1\">0x78A5636F</span>,<span class=\"pl-c1\">0x84C87814</span>,<span class=\"pl-c1\">0x8CC70208</span>,<span class=\"pl-c1\">0x90BEFFFA</span>,<span class=\"pl-c1\">0xA4506CEB</span>,<span class=\"pl-c1\">0xBEF9A3F7</span>,<span class=\"pl-c1\">0xC67178F2</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7412\" class=\"blob-num js-line-number\" data-line-number=\"7412\"></td>\n        <td id=\"LC7412\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> <span class=\"pl-c1\">HASH</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(<span class=\"pl-c1\">0x6A09E667</span>, <span class=\"pl-c1\">0xBB67AE85</span>, <span class=\"pl-c1\">0x3C6EF372</span>, <span class=\"pl-c1\">0xA54FF53A</span>, <span class=\"pl-c1\">0x510E527F</span>, <span class=\"pl-c1\">0x9B05688C</span>, <span class=\"pl-c1\">0x1F83D9AB</span>, <span class=\"pl-c1\">0x5BE0CD19</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7413\" class=\"blob-num js-line-number\" data-line-number=\"7413\"></td>\n        <td id=\"LC7413\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> W <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(<span class=\"pl-c1\">64</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7414\" class=\"blob-num js-line-number\" data-line-number=\"7414\"></td>\n        <td id=\"LC7414\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> a, b, c, d, e, f, g, h, i, j;</td>\n      </tr>\n      <tr>\n        <td id=\"L7415\" class=\"blob-num js-line-number\" data-line-number=\"7415\"></td>\n        <td id=\"LC7415\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> <span class=\"pl-c1\">T1</span>, <span class=\"pl-c1\">T2</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7416\" class=\"blob-num js-line-number\" data-line-number=\"7416\"></td>\n        <td id=\"LC7416\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7417\" class=\"blob-num js-line-number\" data-line-number=\"7417\"></td>\n        <td id=\"LC7417\" class=\"blob-code blob-code-inner js-file-line\">  m[l <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">5</span>] <span class=\"pl-k\">|=</span> <span class=\"pl-c1\">0x80</span> <span class=\"pl-k\">&lt;&lt;</span> (<span class=\"pl-c1\">24</span> <span class=\"pl-k\">-</span> l <span class=\"pl-k\">%</span> <span class=\"pl-c1\">32</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7418\" class=\"blob-num js-line-number\" data-line-number=\"7418\"></td>\n        <td id=\"LC7418\" class=\"blob-code blob-code-inner js-file-line\">  m[((l <span class=\"pl-k\">+</span> <span class=\"pl-c1\">64</span> <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">9</span>) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">4</span>) <span class=\"pl-k\">+</span> <span class=\"pl-c1\">15</span>] <span class=\"pl-k\">=</span> l;</td>\n      </tr>\n      <tr>\n        <td id=\"L7419\" class=\"blob-num js-line-number\" data-line-number=\"7419\"></td>\n        <td id=\"LC7419\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">m</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">+=</span> <span class=\"pl-c1\">16</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7420\" class=\"blob-num js-line-number\" data-line-number=\"7420\"></td>\n        <td id=\"LC7420\" class=\"blob-code blob-code-inner js-file-line\">    a <span class=\"pl-k\">=</span> <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">0</span>]; b <span class=\"pl-k\">=</span> <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">1</span>]; c <span class=\"pl-k\">=</span> <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">2</span>]; d <span class=\"pl-k\">=</span> <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">3</span>]; e <span class=\"pl-k\">=</span> <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">4</span>]; f <span class=\"pl-k\">=</span> <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">5</span>]; g <span class=\"pl-k\">=</span> <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">6</span>]; h <span class=\"pl-k\">=</span> <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">7</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L7421\" class=\"blob-num js-line-number\" data-line-number=\"7421\"></td>\n        <td id=\"LC7421\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; j <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">64</span>; j<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7422\" class=\"blob-num js-line-number\" data-line-number=\"7422\"></td>\n        <td id=\"LC7422\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (j <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">16</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7423\" class=\"blob-num js-line-number\" data-line-number=\"7423\"></td>\n        <td id=\"LC7423\" class=\"blob-code blob-code-inner js-file-line\">        W[j] <span class=\"pl-k\">=</span> m[j <span class=\"pl-k\">+</span> i];</td>\n      </tr>\n      <tr>\n        <td id=\"L7424\" class=\"blob-num js-line-number\" data-line-number=\"7424\"></td>\n        <td id=\"LC7424\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7425\" class=\"blob-num js-line-number\" data-line-number=\"7425\"></td>\n        <td id=\"LC7425\" class=\"blob-code blob-code-inner js-file-line\">        W[j] <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">Gamma1256</span>(W[j <span class=\"pl-k\">-</span> <span class=\"pl-c1\">2</span>]), W[j <span class=\"pl-k\">-</span> <span class=\"pl-c1\">7</span>]), <span class=\"pl-en\">Gamma0256</span>(W[j <span class=\"pl-k\">-</span> <span class=\"pl-c1\">15</span>])), W[j <span class=\"pl-k\">-</span> <span class=\"pl-c1\">16</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L7426\" class=\"blob-num js-line-number\" data-line-number=\"7426\"></td>\n        <td id=\"LC7426\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L7427\" class=\"blob-num js-line-number\" data-line-number=\"7427\"></td>\n        <td id=\"LC7427\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">T1</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">safe_add</span>(h, <span class=\"pl-en\">Sigma1256</span>(e)), <span class=\"pl-en\">Ch</span>(e, f, g)), K[j]), W[j]);</td>\n      </tr>\n      <tr>\n        <td id=\"L7428\" class=\"blob-num js-line-number\" data-line-number=\"7428\"></td>\n        <td id=\"LC7428\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">T2</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(<span class=\"pl-en\">Sigma0256</span>(a), <span class=\"pl-en\">Maj</span>(a, b, c));</td>\n      </tr>\n      <tr>\n        <td id=\"L7429\" class=\"blob-num js-line-number\" data-line-number=\"7429\"></td>\n        <td id=\"LC7429\" class=\"blob-code blob-code-inner js-file-line\">      h <span class=\"pl-k\">=</span> g; g <span class=\"pl-k\">=</span> f; f <span class=\"pl-k\">=</span> e; e <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(d, <span class=\"pl-c1\">T1</span>); d <span class=\"pl-k\">=</span> c; c <span class=\"pl-k\">=</span> b; b <span class=\"pl-k\">=</span> a; a <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(<span class=\"pl-c1\">T1</span>, <span class=\"pl-c1\">T2</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7430\" class=\"blob-num js-line-number\" data-line-number=\"7430\"></td>\n        <td id=\"LC7430\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7431\" class=\"blob-num js-line-number\" data-line-number=\"7431\"></td>\n        <td id=\"LC7431\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(a, <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">0</span>]); <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">1</span>] <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(b, <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">1</span>]); <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">2</span>] <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(c, <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">2</span>]); <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">3</span>] <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(d, <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">3</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L7432\" class=\"blob-num js-line-number\" data-line-number=\"7432\"></td>\n        <td id=\"LC7432\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">4</span>] <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(e, <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">4</span>]); <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">5</span>] <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(f, <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">5</span>]); <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">6</span>] <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(g, <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">6</span>]); <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">7</span>] <span class=\"pl-k\">=</span> <span class=\"pl-en\">safe_add</span>(h, <span class=\"pl-c1\">HASH</span>[<span class=\"pl-c1\">7</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L7433\" class=\"blob-num js-line-number\" data-line-number=\"7433\"></td>\n        <td id=\"LC7433\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7434\" class=\"blob-num js-line-number\" data-line-number=\"7434\"></td>\n        <td id=\"LC7434\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">HASH</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7435\" class=\"blob-num js-line-number\" data-line-number=\"7435\"></td>\n        <td id=\"LC7435\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7436\" class=\"blob-num js-line-number\" data-line-number=\"7436\"></td>\n        <td id=\"LC7436\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7437\" class=\"blob-num js-line-number\" data-line-number=\"7437\"></td>\n        <td id=\"LC7437\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-en\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">sha256</span>(<span class=\"pl-smi\">buf</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7438\" class=\"blob-num js-line-number\" data-line-number=\"7438\"></td>\n        <td id=\"LC7438\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">helpers</span>.<span class=\"pl-c1\">hash</span>(buf, core_sha256, <span class=\"pl-c1\">32</span>, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7439\" class=\"blob-num js-line-number\" data-line-number=\"7439\"></td>\n        <td id=\"LC7439\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7440\" class=\"blob-num js-line-number\" data-line-number=\"7440\"></td>\n        <td id=\"LC7440\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7441\" class=\"blob-num js-line-number\" data-line-number=\"7441\"></td>\n        <td id=\"LC7441\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./helpers<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">50</span>}],<span class=\"pl-c1\">56</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L7442\" class=\"blob-num js-line-number\" data-line-number=\"7442\"></td>\n        <td id=\"LC7442\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7443\" class=\"blob-num js-line-number\" data-line-number=\"7443\"></td>\n        <td id=\"LC7443\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">EventEmitter</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L7444\" class=\"blob-num js-line-number\" data-line-number=\"7444\"></td>\n        <td id=\"LC7444\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L7445\" class=\"blob-num js-line-number\" data-line-number=\"7445\"></td>\n        <td id=\"LC7445\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_maxListeners</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_maxListeners</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7446\" class=\"blob-num js-line-number\" data-line-number=\"7446\"></td>\n        <td id=\"LC7446\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7447\" class=\"blob-num js-line-number\" data-line-number=\"7447\"></td>\n        <td id=\"LC7447\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> EventEmitter;</td>\n      </tr>\n      <tr>\n        <td id=\"L7448\" class=\"blob-num js-line-number\" data-line-number=\"7448\"></td>\n        <td id=\"LC7448\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7449\" class=\"blob-num js-line-number\" data-line-number=\"7449\"></td>\n        <td id=\"LC7449\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-smi\">EventEmitter</span> <span class=\"pl-k\">=</span> EventEmitter;</td>\n      </tr>\n      <tr>\n        <td id=\"L7450\" class=\"blob-num js-line-number\" data-line-number=\"7450\"></td>\n        <td id=\"LC7450\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7451\" class=\"blob-num js-line-number\" data-line-number=\"7451\"></td>\n        <td id=\"LC7451\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7452\" class=\"blob-num js-line-number\" data-line-number=\"7452\"></td>\n        <td id=\"LC7452\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">_maxListeners</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7453\" class=\"blob-num js-line-number\" data-line-number=\"7453\"></td>\n        <td id=\"LC7453\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7454\" class=\"blob-num js-line-number\" data-line-number=\"7454\"></td>\n        <td id=\"LC7454\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-smi\">defaultMaxListeners</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">10</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7455\" class=\"blob-num js-line-number\" data-line-number=\"7455\"></td>\n        <td id=\"LC7455\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7456\" class=\"blob-num js-line-number\" data-line-number=\"7456\"></td>\n        <td id=\"LC7456\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">setMaxListeners</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">n</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7457\" class=\"blob-num js-line-number\" data-line-number=\"7457\"></td>\n        <td id=\"LC7457\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isNumber</span>(n) <span class=\"pl-k\">||</span> n <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">isNaN</span>(n))</td>\n      </tr>\n      <tr>\n        <td id=\"L7458\" class=\"blob-num js-line-number\" data-line-number=\"7458\"></td>\n        <td id=\"LC7458\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-en\">TypeError</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>n must be a positive number<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7459\" class=\"blob-num js-line-number\" data-line-number=\"7459\"></td>\n        <td id=\"LC7459\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_maxListeners</span> <span class=\"pl-k\">=</span> n;</td>\n      </tr>\n      <tr>\n        <td id=\"L7460\" class=\"blob-num js-line-number\" data-line-number=\"7460\"></td>\n        <td id=\"LC7460\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7461\" class=\"blob-num js-line-number\" data-line-number=\"7461\"></td>\n        <td id=\"LC7461\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7462\" class=\"blob-num js-line-number\" data-line-number=\"7462\"></td>\n        <td id=\"LC7462\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7463\" class=\"blob-num js-line-number\" data-line-number=\"7463\"></td>\n        <td id=\"LC7463\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">emit</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7464\" class=\"blob-num js-line-number\" data-line-number=\"7464\"></td>\n        <td id=\"LC7464\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> er, handler, len, args, i, listeners;</td>\n      </tr>\n      <tr>\n        <td id=\"L7465\" class=\"blob-num js-line-number\" data-line-number=\"7465\"></td>\n        <td id=\"LC7465\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7466\" class=\"blob-num js-line-number\" data-line-number=\"7466\"></td>\n        <td id=\"LC7466\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7467\" class=\"blob-num js-line-number\" data-line-number=\"7467\"></td>\n        <td id=\"LC7467\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L7468\" class=\"blob-num js-line-number\" data-line-number=\"7468\"></td>\n        <td id=\"LC7468\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7469\" class=\"blob-num js-line-number\" data-line-number=\"7469\"></td>\n        <td id=\"LC7469\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (type <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>error<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7470\" class=\"blob-num js-line-number\" data-line-number=\"7470\"></td>\n        <td id=\"LC7470\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>.<span class=\"pl-smi\">error</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7471\" class=\"blob-num js-line-number\" data-line-number=\"7471\"></td>\n        <td id=\"LC7471\" class=\"blob-code blob-code-inner js-file-line\">        (<span class=\"pl-en\">isObject</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>.<span class=\"pl-smi\">error</span>) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>.<span class=\"pl-smi\">error</span>.<span class=\"pl-c1\">length</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7472\" class=\"blob-num js-line-number\" data-line-number=\"7472\"></td>\n        <td id=\"LC7472\" class=\"blob-code blob-code-inner js-file-line\">      er <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L7473\" class=\"blob-num js-line-number\" data-line-number=\"7473\"></td>\n        <td id=\"LC7473\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (er <span class=\"pl-k\">instanceof</span> Error) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7474\" class=\"blob-num js-line-number\" data-line-number=\"7474\"></td>\n        <td id=\"LC7474\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> er; <span class=\"pl-c\">// Unhandled &#39;error&#39; event</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7475\" class=\"blob-num js-line-number\" data-line-number=\"7475\"></td>\n        <td id=\"LC7475\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L7476\" class=\"blob-num js-line-number\" data-line-number=\"7476\"></td>\n        <td id=\"LC7476\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-en\">TypeError</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Uncaught, unspecified &quot;error&quot; event.<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7477\" class=\"blob-num js-line-number\" data-line-number=\"7477\"></td>\n        <td id=\"LC7477\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7478\" class=\"blob-num js-line-number\" data-line-number=\"7478\"></td>\n        <td id=\"LC7478\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7479\" class=\"blob-num js-line-number\" data-line-number=\"7479\"></td>\n        <td id=\"LC7479\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7480\" class=\"blob-num js-line-number\" data-line-number=\"7480\"></td>\n        <td id=\"LC7480\" class=\"blob-code blob-code-inner js-file-line\">  handler <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type];</td>\n      </tr>\n      <tr>\n        <td id=\"L7481\" class=\"blob-num js-line-number\" data-line-number=\"7481\"></td>\n        <td id=\"LC7481\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7482\" class=\"blob-num js-line-number\" data-line-number=\"7482\"></td>\n        <td id=\"LC7482\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isUndefined</span>(handler))</td>\n      </tr>\n      <tr>\n        <td id=\"L7483\" class=\"blob-num js-line-number\" data-line-number=\"7483\"></td>\n        <td id=\"LC7483\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7484\" class=\"blob-num js-line-number\" data-line-number=\"7484\"></td>\n        <td id=\"LC7484\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7485\" class=\"blob-num js-line-number\" data-line-number=\"7485\"></td>\n        <td id=\"LC7485\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isFunction</span>(handler)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7486\" class=\"blob-num js-line-number\" data-line-number=\"7486\"></td>\n        <td id=\"LC7486\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">switch</span> (<span class=\"pl-v\">arguments</span>.<span class=\"pl-c1\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7487\" class=\"blob-num js-line-number\" data-line-number=\"7487\"></td>\n        <td id=\"LC7487\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-c1\">1</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7488\" class=\"blob-num js-line-number\" data-line-number=\"7488\"></td>\n        <td id=\"LC7488\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">handler</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7489\" class=\"blob-num js-line-number\" data-line-number=\"7489\"></td>\n        <td id=\"LC7489\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7490\" class=\"blob-num js-line-number\" data-line-number=\"7490\"></td>\n        <td id=\"LC7490\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-c1\">2</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7491\" class=\"blob-num js-line-number\" data-line-number=\"7491\"></td>\n        <td id=\"LC7491\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">handler</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">1</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L7492\" class=\"blob-num js-line-number\" data-line-number=\"7492\"></td>\n        <td id=\"LC7492\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7493\" class=\"blob-num js-line-number\" data-line-number=\"7493\"></td>\n        <td id=\"LC7493\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-c1\">3</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7494\" class=\"blob-num js-line-number\" data-line-number=\"7494\"></td>\n        <td id=\"LC7494\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">handler</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">1</span>], <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">2</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L7495\" class=\"blob-num js-line-number\" data-line-number=\"7495\"></td>\n        <td id=\"LC7495\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7496\" class=\"blob-num js-line-number\" data-line-number=\"7496\"></td>\n        <td id=\"LC7496\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7497\" class=\"blob-num js-line-number\" data-line-number=\"7497\"></td>\n        <td id=\"LC7497\" class=\"blob-code blob-code-inner js-file-line\">        len <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7498\" class=\"blob-num js-line-number\" data-line-number=\"7498\"></td>\n        <td id=\"LC7498\" class=\"blob-code blob-code-inner js-file-line\">        args <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(len <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7499\" class=\"blob-num js-line-number\" data-line-number=\"7499\"></td>\n        <td id=\"LC7499\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1</span>; i <span class=\"pl-k\">&lt;</span> len; i<span class=\"pl-k\">++</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7500\" class=\"blob-num js-line-number\" data-line-number=\"7500\"></td>\n        <td id=\"LC7500\" class=\"blob-code blob-code-inner js-file-line\">          args[i <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>] <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L7501\" class=\"blob-num js-line-number\" data-line-number=\"7501\"></td>\n        <td id=\"LC7501\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">handler</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, args);</td>\n      </tr>\n      <tr>\n        <td id=\"L7502\" class=\"blob-num js-line-number\" data-line-number=\"7502\"></td>\n        <td id=\"LC7502\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7503\" class=\"blob-num js-line-number\" data-line-number=\"7503\"></td>\n        <td id=\"LC7503\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isObject</span>(handler)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7504\" class=\"blob-num js-line-number\" data-line-number=\"7504\"></td>\n        <td id=\"LC7504\" class=\"blob-code blob-code-inner js-file-line\">    len <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7505\" class=\"blob-num js-line-number\" data-line-number=\"7505\"></td>\n        <td id=\"LC7505\" class=\"blob-code blob-code-inner js-file-line\">    args <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(len <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7506\" class=\"blob-num js-line-number\" data-line-number=\"7506\"></td>\n        <td id=\"LC7506\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1</span>; i <span class=\"pl-k\">&lt;</span> len; i<span class=\"pl-k\">++</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7507\" class=\"blob-num js-line-number\" data-line-number=\"7507\"></td>\n        <td id=\"LC7507\" class=\"blob-code blob-code-inner js-file-line\">      args[i <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>] <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L7508\" class=\"blob-num js-line-number\" data-line-number=\"7508\"></td>\n        <td id=\"LC7508\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7509\" class=\"blob-num js-line-number\" data-line-number=\"7509\"></td>\n        <td id=\"LC7509\" class=\"blob-code blob-code-inner js-file-line\">    listeners <span class=\"pl-k\">=</span> <span class=\"pl-smi\">handler</span>.<span class=\"pl-c1\">slice</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L7510\" class=\"blob-num js-line-number\" data-line-number=\"7510\"></td>\n        <td id=\"LC7510\" class=\"blob-code blob-code-inner js-file-line\">    len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">listeners</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7511\" class=\"blob-num js-line-number\" data-line-number=\"7511\"></td>\n        <td id=\"LC7511\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> len; i<span class=\"pl-k\">++</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7512\" class=\"blob-num js-line-number\" data-line-number=\"7512\"></td>\n        <td id=\"LC7512\" class=\"blob-code blob-code-inner js-file-line\">      listeners[i].<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, args);</td>\n      </tr>\n      <tr>\n        <td id=\"L7513\" class=\"blob-num js-line-number\" data-line-number=\"7513\"></td>\n        <td id=\"LC7513\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7514\" class=\"blob-num js-line-number\" data-line-number=\"7514\"></td>\n        <td id=\"LC7514\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7515\" class=\"blob-num js-line-number\" data-line-number=\"7515\"></td>\n        <td id=\"LC7515\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7516\" class=\"blob-num js-line-number\" data-line-number=\"7516\"></td>\n        <td id=\"LC7516\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7517\" class=\"blob-num js-line-number\" data-line-number=\"7517\"></td>\n        <td id=\"LC7517\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7518\" class=\"blob-num js-line-number\" data-line-number=\"7518\"></td>\n        <td id=\"LC7518\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">addListener</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">type</span>, <span class=\"pl-smi\">listener</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7519\" class=\"blob-num js-line-number\" data-line-number=\"7519\"></td>\n        <td id=\"LC7519\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> m;</td>\n      </tr>\n      <tr>\n        <td id=\"L7520\" class=\"blob-num js-line-number\" data-line-number=\"7520\"></td>\n        <td id=\"LC7520\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7521\" class=\"blob-num js-line-number\" data-line-number=\"7521\"></td>\n        <td id=\"LC7521\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isFunction</span>(listener))</td>\n      </tr>\n      <tr>\n        <td id=\"L7522\" class=\"blob-num js-line-number\" data-line-number=\"7522\"></td>\n        <td id=\"LC7522\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-en\">TypeError</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>listener must be a function<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7523\" class=\"blob-num js-line-number\" data-line-number=\"7523\"></td>\n        <td id=\"LC7523\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7524\" class=\"blob-num js-line-number\" data-line-number=\"7524\"></td>\n        <td id=\"LC7524\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7525\" class=\"blob-num js-line-number\" data-line-number=\"7525\"></td>\n        <td id=\"LC7525\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L7526\" class=\"blob-num js-line-number\" data-line-number=\"7526\"></td>\n        <td id=\"LC7526\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7527\" class=\"blob-num js-line-number\" data-line-number=\"7527\"></td>\n        <td id=\"LC7527\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>.<span class=\"pl-smi\">newListener</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7528\" class=\"blob-num js-line-number\" data-line-number=\"7528\"></td>\n        <td id=\"LC7528\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>newListener<span class=\"pl-pds\">&#39;</span></span>, type,</td>\n      </tr>\n      <tr>\n        <td id=\"L7529\" class=\"blob-num js-line-number\" data-line-number=\"7529\"></td>\n        <td id=\"LC7529\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-en\">isFunction</span>(<span class=\"pl-smi\">listener</span>.<span class=\"pl-smi\">listener</span>) <span class=\"pl-k\">?</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7530\" class=\"blob-num js-line-number\" data-line-number=\"7530\"></td>\n        <td id=\"LC7530\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-smi\">listener</span>.<span class=\"pl-smi\">listener</span> <span class=\"pl-k\">:</span> listener);</td>\n      </tr>\n      <tr>\n        <td id=\"L7531\" class=\"blob-num js-line-number\" data-line-number=\"7531\"></td>\n        <td id=\"LC7531\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7532\" class=\"blob-num js-line-number\" data-line-number=\"7532\"></td>\n        <td id=\"LC7532\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type])</td>\n      </tr>\n      <tr>\n        <td id=\"L7533\" class=\"blob-num js-line-number\" data-line-number=\"7533\"></td>\n        <td id=\"LC7533\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type] <span class=\"pl-k\">=</span> listener;</td>\n      </tr>\n      <tr>\n        <td id=\"L7534\" class=\"blob-num js-line-number\" data-line-number=\"7534\"></td>\n        <td id=\"LC7534\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isObject</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type]))</td>\n      </tr>\n      <tr>\n        <td id=\"L7535\" class=\"blob-num js-line-number\" data-line-number=\"7535\"></td>\n        <td id=\"LC7535\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type].<span class=\"pl-c1\">push</span>(listener);</td>\n      </tr>\n      <tr>\n        <td id=\"L7536\" class=\"blob-num js-line-number\" data-line-number=\"7536\"></td>\n        <td id=\"LC7536\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7537\" class=\"blob-num js-line-number\" data-line-number=\"7537\"></td>\n        <td id=\"LC7537\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type] <span class=\"pl-k\">=</span> [<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type], listener];</td>\n      </tr>\n      <tr>\n        <td id=\"L7538\" class=\"blob-num js-line-number\" data-line-number=\"7538\"></td>\n        <td id=\"LC7538\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7539\" class=\"blob-num js-line-number\" data-line-number=\"7539\"></td>\n        <td id=\"LC7539\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isObject</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type]) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type].<span class=\"pl-smi\">warned</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7540\" class=\"blob-num js-line-number\" data-line-number=\"7540\"></td>\n        <td id=\"LC7540\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> m;</td>\n      </tr>\n      <tr>\n        <td id=\"L7541\" class=\"blob-num js-line-number\" data-line-number=\"7541\"></td>\n        <td id=\"LC7541\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isUndefined</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_maxListeners</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7542\" class=\"blob-num js-line-number\" data-line-number=\"7542\"></td>\n        <td id=\"LC7542\" class=\"blob-code blob-code-inner js-file-line\">      m <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_maxListeners</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7543\" class=\"blob-num js-line-number\" data-line-number=\"7543\"></td>\n        <td id=\"LC7543\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7544\" class=\"blob-num js-line-number\" data-line-number=\"7544\"></td>\n        <td id=\"LC7544\" class=\"blob-code blob-code-inner js-file-line\">      m <span class=\"pl-k\">=</span> <span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-smi\">defaultMaxListeners</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7545\" class=\"blob-num js-line-number\" data-line-number=\"7545\"></td>\n        <td id=\"LC7545\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7546\" class=\"blob-num js-line-number\" data-line-number=\"7546\"></td>\n        <td id=\"LC7546\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7547\" class=\"blob-num js-line-number\" data-line-number=\"7547\"></td>\n        <td id=\"LC7547\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (m <span class=\"pl-k\">&amp;&amp;</span> m <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type].<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> m) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7548\" class=\"blob-num js-line-number\" data-line-number=\"7548\"></td>\n        <td id=\"LC7548\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type].<span class=\"pl-smi\">warned</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7549\" class=\"blob-num js-line-number\" data-line-number=\"7549\"></td>\n        <td id=\"LC7549\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">console</span>.<span class=\"pl-c1\">error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>(node) warning: possible EventEmitter memory <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7550\" class=\"blob-num js-line-number\" data-line-number=\"7550\"></td>\n        <td id=\"LC7550\" class=\"blob-code blob-code-inner js-file-line\">                    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>leak detected. %d listeners added. <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7551\" class=\"blob-num js-line-number\" data-line-number=\"7551\"></td>\n        <td id=\"LC7551\" class=\"blob-code blob-code-inner js-file-line\">                    <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Use emitter.setMaxListeners() to increase limit.<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7552\" class=\"blob-num js-line-number\" data-line-number=\"7552\"></td>\n        <td id=\"LC7552\" class=\"blob-code blob-code-inner js-file-line\">                    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type].<span class=\"pl-c1\">length</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7553\" class=\"blob-num js-line-number\" data-line-number=\"7553\"></td>\n        <td id=\"LC7553\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-en\">console</span>.<span class=\"pl-smi\">trace</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7554\" class=\"blob-num js-line-number\" data-line-number=\"7554\"></td>\n        <td id=\"LC7554\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">console</span>.<span class=\"pl-en\">trace</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L7555\" class=\"blob-num js-line-number\" data-line-number=\"7555\"></td>\n        <td id=\"LC7555\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L7556\" class=\"blob-num js-line-number\" data-line-number=\"7556\"></td>\n        <td id=\"LC7556\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7557\" class=\"blob-num js-line-number\" data-line-number=\"7557\"></td>\n        <td id=\"LC7557\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7558\" class=\"blob-num js-line-number\" data-line-number=\"7558\"></td>\n        <td id=\"LC7558\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7559\" class=\"blob-num js-line-number\" data-line-number=\"7559\"></td>\n        <td id=\"LC7559\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7560\" class=\"blob-num js-line-number\" data-line-number=\"7560\"></td>\n        <td id=\"LC7560\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7561\" class=\"blob-num js-line-number\" data-line-number=\"7561\"></td>\n        <td id=\"LC7561\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7562\" class=\"blob-num js-line-number\" data-line-number=\"7562\"></td>\n        <td id=\"LC7562\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">on</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">addListener</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7563\" class=\"blob-num js-line-number\" data-line-number=\"7563\"></td>\n        <td id=\"LC7563\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7564\" class=\"blob-num js-line-number\" data-line-number=\"7564\"></td>\n        <td id=\"LC7564\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">once</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">type</span>, <span class=\"pl-smi\">listener</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7565\" class=\"blob-num js-line-number\" data-line-number=\"7565\"></td>\n        <td id=\"LC7565\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isFunction</span>(listener))</td>\n      </tr>\n      <tr>\n        <td id=\"L7566\" class=\"blob-num js-line-number\" data-line-number=\"7566\"></td>\n        <td id=\"LC7566\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-en\">TypeError</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>listener must be a function<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7567\" class=\"blob-num js-line-number\" data-line-number=\"7567\"></td>\n        <td id=\"LC7567\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7568\" class=\"blob-num js-line-number\" data-line-number=\"7568\"></td>\n        <td id=\"LC7568\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> fired <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7569\" class=\"blob-num js-line-number\" data-line-number=\"7569\"></td>\n        <td id=\"LC7569\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7570\" class=\"blob-num js-line-number\" data-line-number=\"7570\"></td>\n        <td id=\"LC7570\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">function</span> <span class=\"pl-en\">g</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L7571\" class=\"blob-num js-line-number\" data-line-number=\"7571\"></td>\n        <td id=\"LC7571\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">removeListener</span>(type, g);</td>\n      </tr>\n      <tr>\n        <td id=\"L7572\" class=\"blob-num js-line-number\" data-line-number=\"7572\"></td>\n        <td id=\"LC7572\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7573\" class=\"blob-num js-line-number\" data-line-number=\"7573\"></td>\n        <td id=\"LC7573\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>fired) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7574\" class=\"blob-num js-line-number\" data-line-number=\"7574\"></td>\n        <td id=\"LC7574\" class=\"blob-code blob-code-inner js-file-line\">      fired <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7575\" class=\"blob-num js-line-number\" data-line-number=\"7575\"></td>\n        <td id=\"LC7575\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">listener</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7576\" class=\"blob-num js-line-number\" data-line-number=\"7576\"></td>\n        <td id=\"LC7576\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7577\" class=\"blob-num js-line-number\" data-line-number=\"7577\"></td>\n        <td id=\"LC7577\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7578\" class=\"blob-num js-line-number\" data-line-number=\"7578\"></td>\n        <td id=\"LC7578\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7579\" class=\"blob-num js-line-number\" data-line-number=\"7579\"></td>\n        <td id=\"LC7579\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">g</span>.<span class=\"pl-smi\">listener</span> <span class=\"pl-k\">=</span> listener;</td>\n      </tr>\n      <tr>\n        <td id=\"L7580\" class=\"blob-num js-line-number\" data-line-number=\"7580\"></td>\n        <td id=\"LC7580\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-en\">on</span>(type, g);</td>\n      </tr>\n      <tr>\n        <td id=\"L7581\" class=\"blob-num js-line-number\" data-line-number=\"7581\"></td>\n        <td id=\"LC7581\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7582\" class=\"blob-num js-line-number\" data-line-number=\"7582\"></td>\n        <td id=\"LC7582\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7583\" class=\"blob-num js-line-number\" data-line-number=\"7583\"></td>\n        <td id=\"LC7583\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7584\" class=\"blob-num js-line-number\" data-line-number=\"7584\"></td>\n        <td id=\"LC7584\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7585\" class=\"blob-num js-line-number\" data-line-number=\"7585\"></td>\n        <td id=\"LC7585\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">removeListener</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">type</span>, <span class=\"pl-smi\">listener</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7586\" class=\"blob-num js-line-number\" data-line-number=\"7586\"></td>\n        <td id=\"LC7586\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> list, position, length, i;</td>\n      </tr>\n      <tr>\n        <td id=\"L7587\" class=\"blob-num js-line-number\" data-line-number=\"7587\"></td>\n        <td id=\"LC7587\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7588\" class=\"blob-num js-line-number\" data-line-number=\"7588\"></td>\n        <td id=\"LC7588\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isFunction</span>(listener))</td>\n      </tr>\n      <tr>\n        <td id=\"L7589\" class=\"blob-num js-line-number\" data-line-number=\"7589\"></td>\n        <td id=\"LC7589\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-en\">TypeError</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>listener must be a function<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7590\" class=\"blob-num js-line-number\" data-line-number=\"7590\"></td>\n        <td id=\"LC7590\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7591\" class=\"blob-num js-line-number\" data-line-number=\"7591\"></td>\n        <td id=\"LC7591\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type])</td>\n      </tr>\n      <tr>\n        <td id=\"L7592\" class=\"blob-num js-line-number\" data-line-number=\"7592\"></td>\n        <td id=\"LC7592\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7593\" class=\"blob-num js-line-number\" data-line-number=\"7593\"></td>\n        <td id=\"LC7593\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7594\" class=\"blob-num js-line-number\" data-line-number=\"7594\"></td>\n        <td id=\"LC7594\" class=\"blob-code blob-code-inner js-file-line\">  list <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type];</td>\n      </tr>\n      <tr>\n        <td id=\"L7595\" class=\"blob-num js-line-number\" data-line-number=\"7595\"></td>\n        <td id=\"LC7595\" class=\"blob-code blob-code-inner js-file-line\">  length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">list</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7596\" class=\"blob-num js-line-number\" data-line-number=\"7596\"></td>\n        <td id=\"LC7596\" class=\"blob-code blob-code-inner js-file-line\">  position <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7597\" class=\"blob-num js-line-number\" data-line-number=\"7597\"></td>\n        <td id=\"LC7597\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7598\" class=\"blob-num js-line-number\" data-line-number=\"7598\"></td>\n        <td id=\"LC7598\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (list <span class=\"pl-k\">===</span> listener <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7599\" class=\"blob-num js-line-number\" data-line-number=\"7599\"></td>\n        <td id=\"LC7599\" class=\"blob-code blob-code-inner js-file-line\">      (<span class=\"pl-en\">isFunction</span>(<span class=\"pl-smi\">list</span>.<span class=\"pl-smi\">listener</span>) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">list</span>.<span class=\"pl-smi\">listener</span> <span class=\"pl-k\">===</span> listener)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7600\" class=\"blob-num js-line-number\" data-line-number=\"7600\"></td>\n        <td id=\"LC7600\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">delete</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type];</td>\n      </tr>\n      <tr>\n        <td id=\"L7601\" class=\"blob-num js-line-number\" data-line-number=\"7601\"></td>\n        <td id=\"LC7601\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>.<span class=\"pl-smi\">removeListener</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7602\" class=\"blob-num js-line-number\" data-line-number=\"7602\"></td>\n        <td id=\"LC7602\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>removeListener<span class=\"pl-pds\">&#39;</span></span>, type, listener);</td>\n      </tr>\n      <tr>\n        <td id=\"L7603\" class=\"blob-num js-line-number\" data-line-number=\"7603\"></td>\n        <td id=\"LC7603\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7604\" class=\"blob-num js-line-number\" data-line-number=\"7604\"></td>\n        <td id=\"LC7604\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isObject</span>(list)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7605\" class=\"blob-num js-line-number\" data-line-number=\"7605\"></td>\n        <td id=\"LC7605\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> length; i<span class=\"pl-k\">--</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>;) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7606\" class=\"blob-num js-line-number\" data-line-number=\"7606\"></td>\n        <td id=\"LC7606\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (list[i] <span class=\"pl-k\">===</span> listener <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7607\" class=\"blob-num js-line-number\" data-line-number=\"7607\"></td>\n        <td id=\"LC7607\" class=\"blob-code blob-code-inner js-file-line\">          (list[i].<span class=\"pl-smi\">listener</span> <span class=\"pl-k\">&amp;&amp;</span> list[i].<span class=\"pl-smi\">listener</span> <span class=\"pl-k\">===</span> listener)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7608\" class=\"blob-num js-line-number\" data-line-number=\"7608\"></td>\n        <td id=\"LC7608\" class=\"blob-code blob-code-inner js-file-line\">        position <span class=\"pl-k\">=</span> i;</td>\n      </tr>\n      <tr>\n        <td id=\"L7609\" class=\"blob-num js-line-number\" data-line-number=\"7609\"></td>\n        <td id=\"LC7609\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7610\" class=\"blob-num js-line-number\" data-line-number=\"7610\"></td>\n        <td id=\"LC7610\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L7611\" class=\"blob-num js-line-number\" data-line-number=\"7611\"></td>\n        <td id=\"LC7611\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7612\" class=\"blob-num js-line-number\" data-line-number=\"7612\"></td>\n        <td id=\"LC7612\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7613\" class=\"blob-num js-line-number\" data-line-number=\"7613\"></td>\n        <td id=\"LC7613\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (position <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7614\" class=\"blob-num js-line-number\" data-line-number=\"7614\"></td>\n        <td id=\"LC7614\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7615\" class=\"blob-num js-line-number\" data-line-number=\"7615\"></td>\n        <td id=\"LC7615\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7616\" class=\"blob-num js-line-number\" data-line-number=\"7616\"></td>\n        <td id=\"LC7616\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">list</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7617\" class=\"blob-num js-line-number\" data-line-number=\"7617\"></td>\n        <td id=\"LC7617\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">list</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7618\" class=\"blob-num js-line-number\" data-line-number=\"7618\"></td>\n        <td id=\"LC7618\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">delete</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type];</td>\n      </tr>\n      <tr>\n        <td id=\"L7619\" class=\"blob-num js-line-number\" data-line-number=\"7619\"></td>\n        <td id=\"LC7619\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7620\" class=\"blob-num js-line-number\" data-line-number=\"7620\"></td>\n        <td id=\"LC7620\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">list</span>.<span class=\"pl-c1\">splice</span>(position, <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7621\" class=\"blob-num js-line-number\" data-line-number=\"7621\"></td>\n        <td id=\"LC7621\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7622\" class=\"blob-num js-line-number\" data-line-number=\"7622\"></td>\n        <td id=\"LC7622\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7623\" class=\"blob-num js-line-number\" data-line-number=\"7623\"></td>\n        <td id=\"LC7623\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>.<span class=\"pl-smi\">removeListener</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7624\" class=\"blob-num js-line-number\" data-line-number=\"7624\"></td>\n        <td id=\"LC7624\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">emit</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>removeListener<span class=\"pl-pds\">&#39;</span></span>, type, listener);</td>\n      </tr>\n      <tr>\n        <td id=\"L7625\" class=\"blob-num js-line-number\" data-line-number=\"7625\"></td>\n        <td id=\"LC7625\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7626\" class=\"blob-num js-line-number\" data-line-number=\"7626\"></td>\n        <td id=\"LC7626\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7627\" class=\"blob-num js-line-number\" data-line-number=\"7627\"></td>\n        <td id=\"LC7627\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7628\" class=\"blob-num js-line-number\" data-line-number=\"7628\"></td>\n        <td id=\"LC7628\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7629\" class=\"blob-num js-line-number\" data-line-number=\"7629\"></td>\n        <td id=\"LC7629\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7630\" class=\"blob-num js-line-number\" data-line-number=\"7630\"></td>\n        <td id=\"LC7630\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">removeAllListeners</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7631\" class=\"blob-num js-line-number\" data-line-number=\"7631\"></td>\n        <td id=\"LC7631\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> key, listeners;</td>\n      </tr>\n      <tr>\n        <td id=\"L7632\" class=\"blob-num js-line-number\" data-line-number=\"7632\"></td>\n        <td id=\"LC7632\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7633\" class=\"blob-num js-line-number\" data-line-number=\"7633\"></td>\n        <td id=\"LC7633\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7634\" class=\"blob-num js-line-number\" data-line-number=\"7634\"></td>\n        <td id=\"LC7634\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7635\" class=\"blob-num js-line-number\" data-line-number=\"7635\"></td>\n        <td id=\"LC7635\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7636\" class=\"blob-num js-line-number\" data-line-number=\"7636\"></td>\n        <td id=\"LC7636\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>.<span class=\"pl-smi\">removeListener</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7637\" class=\"blob-num js-line-number\" data-line-number=\"7637\"></td>\n        <td id=\"LC7637\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">arguments</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7638\" class=\"blob-num js-line-number\" data-line-number=\"7638\"></td>\n        <td id=\"LC7638\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L7639\" class=\"blob-num js-line-number\" data-line-number=\"7639\"></td>\n        <td id=\"LC7639\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type])</td>\n      </tr>\n      <tr>\n        <td id=\"L7640\" class=\"blob-num js-line-number\" data-line-number=\"7640\"></td>\n        <td id=\"LC7640\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">delete</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type];</td>\n      </tr>\n      <tr>\n        <td id=\"L7641\" class=\"blob-num js-line-number\" data-line-number=\"7641\"></td>\n        <td id=\"LC7641\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7642\" class=\"blob-num js-line-number\" data-line-number=\"7642\"></td>\n        <td id=\"LC7642\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7643\" class=\"blob-num js-line-number\" data-line-number=\"7643\"></td>\n        <td id=\"LC7643\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7644\" class=\"blob-num js-line-number\" data-line-number=\"7644\"></td>\n        <td id=\"LC7644\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">arguments</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7645\" class=\"blob-num js-line-number\" data-line-number=\"7645\"></td>\n        <td id=\"LC7645\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (key <span class=\"pl-k\">in</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7646\" class=\"blob-num js-line-number\" data-line-number=\"7646\"></td>\n        <td id=\"LC7646\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (key <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>removeListener<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">continue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7647\" class=\"blob-num js-line-number\" data-line-number=\"7647\"></td>\n        <td id=\"LC7647\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">removeAllListeners</span>(key);</td>\n      </tr>\n      <tr>\n        <td id=\"L7648\" class=\"blob-num js-line-number\" data-line-number=\"7648\"></td>\n        <td id=\"LC7648\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7649\" class=\"blob-num js-line-number\" data-line-number=\"7649\"></td>\n        <td id=\"LC7649\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">removeAllListeners</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>removeListener<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7650\" class=\"blob-num js-line-number\" data-line-number=\"7650\"></td>\n        <td id=\"LC7650\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L7651\" class=\"blob-num js-line-number\" data-line-number=\"7651\"></td>\n        <td id=\"LC7651\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7652\" class=\"blob-num js-line-number\" data-line-number=\"7652\"></td>\n        <td id=\"LC7652\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7653\" class=\"blob-num js-line-number\" data-line-number=\"7653\"></td>\n        <td id=\"LC7653\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7654\" class=\"blob-num js-line-number\" data-line-number=\"7654\"></td>\n        <td id=\"LC7654\" class=\"blob-code blob-code-inner js-file-line\">  listeners <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type];</td>\n      </tr>\n      <tr>\n        <td id=\"L7655\" class=\"blob-num js-line-number\" data-line-number=\"7655\"></td>\n        <td id=\"LC7655\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7656\" class=\"blob-num js-line-number\" data-line-number=\"7656\"></td>\n        <td id=\"LC7656\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isFunction</span>(listeners)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7657\" class=\"blob-num js-line-number\" data-line-number=\"7657\"></td>\n        <td id=\"LC7657\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">removeListener</span>(type, listeners);</td>\n      </tr>\n      <tr>\n        <td id=\"L7658\" class=\"blob-num js-line-number\" data-line-number=\"7658\"></td>\n        <td id=\"LC7658\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7659\" class=\"blob-num js-line-number\" data-line-number=\"7659\"></td>\n        <td id=\"LC7659\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">while</span> (<span class=\"pl-smi\">listeners</span>.<span class=\"pl-c1\">length</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L7660\" class=\"blob-num js-line-number\" data-line-number=\"7660\"></td>\n        <td id=\"LC7660\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-en\">removeListener</span>(type, listeners[<span class=\"pl-smi\">listeners</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L7661\" class=\"blob-num js-line-number\" data-line-number=\"7661\"></td>\n        <td id=\"LC7661\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7662\" class=\"blob-num js-line-number\" data-line-number=\"7662\"></td>\n        <td id=\"LC7662\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">delete</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type];</td>\n      </tr>\n      <tr>\n        <td id=\"L7663\" class=\"blob-num js-line-number\" data-line-number=\"7663\"></td>\n        <td id=\"LC7663\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7664\" class=\"blob-num js-line-number\" data-line-number=\"7664\"></td>\n        <td id=\"LC7664\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7665\" class=\"blob-num js-line-number\" data-line-number=\"7665\"></td>\n        <td id=\"LC7665\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7666\" class=\"blob-num js-line-number\" data-line-number=\"7666\"></td>\n        <td id=\"LC7666\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7667\" class=\"blob-num js-line-number\" data-line-number=\"7667\"></td>\n        <td id=\"LC7667\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">listeners</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7668\" class=\"blob-num js-line-number\" data-line-number=\"7668\"></td>\n        <td id=\"LC7668\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> ret;</td>\n      </tr>\n      <tr>\n        <td id=\"L7669\" class=\"blob-num js-line-number\" data-line-number=\"7669\"></td>\n        <td id=\"LC7669\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type])</td>\n      </tr>\n      <tr>\n        <td id=\"L7670\" class=\"blob-num js-line-number\" data-line-number=\"7670\"></td>\n        <td id=\"LC7670\" class=\"blob-code blob-code-inner js-file-line\">    ret <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L7671\" class=\"blob-num js-line-number\" data-line-number=\"7671\"></td>\n        <td id=\"LC7671\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isFunction</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type]))</td>\n      </tr>\n      <tr>\n        <td id=\"L7672\" class=\"blob-num js-line-number\" data-line-number=\"7672\"></td>\n        <td id=\"LC7672\" class=\"blob-code blob-code-inner js-file-line\">    ret <span class=\"pl-k\">=</span> [<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type]];</td>\n      </tr>\n      <tr>\n        <td id=\"L7673\" class=\"blob-num js-line-number\" data-line-number=\"7673\"></td>\n        <td id=\"LC7673\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7674\" class=\"blob-num js-line-number\" data-line-number=\"7674\"></td>\n        <td id=\"LC7674\" class=\"blob-code blob-code-inner js-file-line\">    ret <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">_events</span>[type].<span class=\"pl-c1\">slice</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L7675\" class=\"blob-num js-line-number\" data-line-number=\"7675\"></td>\n        <td id=\"LC7675\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> ret;</td>\n      </tr>\n      <tr>\n        <td id=\"L7676\" class=\"blob-num js-line-number\" data-line-number=\"7676\"></td>\n        <td id=\"LC7676\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7677\" class=\"blob-num js-line-number\" data-line-number=\"7677\"></td>\n        <td id=\"LC7677\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7678\" class=\"blob-num js-line-number\" data-line-number=\"7678\"></td>\n        <td id=\"LC7678\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">EventEmitter</span>.<span class=\"pl-en\">listenerCount</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">emitter</span>, <span class=\"pl-smi\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7679\" class=\"blob-num js-line-number\" data-line-number=\"7679\"></td>\n        <td id=\"LC7679\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> ret;</td>\n      </tr>\n      <tr>\n        <td id=\"L7680\" class=\"blob-num js-line-number\" data-line-number=\"7680\"></td>\n        <td id=\"LC7680\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">emitter</span>.<span class=\"pl-smi\">_events</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">emitter</span>.<span class=\"pl-smi\">_events</span>[type])</td>\n      </tr>\n      <tr>\n        <td id=\"L7681\" class=\"blob-num js-line-number\" data-line-number=\"7681\"></td>\n        <td id=\"LC7681\" class=\"blob-code blob-code-inner js-file-line\">    ret <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7682\" class=\"blob-num js-line-number\" data-line-number=\"7682\"></td>\n        <td id=\"LC7682\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isFunction</span>(<span class=\"pl-smi\">emitter</span>.<span class=\"pl-smi\">_events</span>[type]))</td>\n      </tr>\n      <tr>\n        <td id=\"L7683\" class=\"blob-num js-line-number\" data-line-number=\"7683\"></td>\n        <td id=\"LC7683\" class=\"blob-code blob-code-inner js-file-line\">    ret <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7684\" class=\"blob-num js-line-number\" data-line-number=\"7684\"></td>\n        <td id=\"LC7684\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">else</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7685\" class=\"blob-num js-line-number\" data-line-number=\"7685\"></td>\n        <td id=\"LC7685\" class=\"blob-code blob-code-inner js-file-line\">    ret <span class=\"pl-k\">=</span> <span class=\"pl-smi\">emitter</span>.<span class=\"pl-smi\">_events</span>[type].<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7686\" class=\"blob-num js-line-number\" data-line-number=\"7686\"></td>\n        <td id=\"LC7686\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> ret;</td>\n      </tr>\n      <tr>\n        <td id=\"L7687\" class=\"blob-num js-line-number\" data-line-number=\"7687\"></td>\n        <td id=\"LC7687\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7688\" class=\"blob-num js-line-number\" data-line-number=\"7688\"></td>\n        <td id=\"LC7688\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7689\" class=\"blob-num js-line-number\" data-line-number=\"7689\"></td>\n        <td id=\"LC7689\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isFunction</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7690\" class=\"blob-num js-line-number\" data-line-number=\"7690\"></td>\n        <td id=\"LC7690\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7691\" class=\"blob-num js-line-number\" data-line-number=\"7691\"></td>\n        <td id=\"LC7691\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7692\" class=\"blob-num js-line-number\" data-line-number=\"7692\"></td>\n        <td id=\"LC7692\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7693\" class=\"blob-num js-line-number\" data-line-number=\"7693\"></td>\n        <td id=\"LC7693\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isNumber</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7694\" class=\"blob-num js-line-number\" data-line-number=\"7694\"></td>\n        <td id=\"LC7694\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7695\" class=\"blob-num js-line-number\" data-line-number=\"7695\"></td>\n        <td id=\"LC7695\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7696\" class=\"blob-num js-line-number\" data-line-number=\"7696\"></td>\n        <td id=\"LC7696\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7697\" class=\"blob-num js-line-number\" data-line-number=\"7697\"></td>\n        <td id=\"LC7697\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isObject</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7698\" class=\"blob-num js-line-number\" data-line-number=\"7698\"></td>\n        <td id=\"LC7698\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> arg <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7699\" class=\"blob-num js-line-number\" data-line-number=\"7699\"></td>\n        <td id=\"LC7699\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7700\" class=\"blob-num js-line-number\" data-line-number=\"7700\"></td>\n        <td id=\"LC7700\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7701\" class=\"blob-num js-line-number\" data-line-number=\"7701\"></td>\n        <td id=\"LC7701\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isUndefined</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7702\" class=\"blob-num js-line-number\" data-line-number=\"7702\"></td>\n        <td id=\"LC7702\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7703\" class=\"blob-num js-line-number\" data-line-number=\"7703\"></td>\n        <td id=\"LC7703\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7704\" class=\"blob-num js-line-number\" data-line-number=\"7704\"></td>\n        <td id=\"LC7704\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7705\" class=\"blob-num js-line-number\" data-line-number=\"7705\"></td>\n        <td id=\"LC7705\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">57</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L7706\" class=\"blob-num js-line-number\" data-line-number=\"7706\"></td>\n        <td id=\"LC7706\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-smi\">create</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7707\" class=\"blob-num js-line-number\" data-line-number=\"7707\"></td>\n        <td id=\"LC7707\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-en\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">inherits</span>(<span class=\"pl-smi\">ctor</span>, <span class=\"pl-smi\">superCtor</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7708\" class=\"blob-num js-line-number\" data-line-number=\"7708\"></td>\n        <td id=\"LC7708\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">ctor</span>.<span class=\"pl-smi\">super_</span> <span class=\"pl-k\">=</span> superCtor</td>\n      </tr>\n      <tr>\n        <td id=\"L7709\" class=\"blob-num js-line-number\" data-line-number=\"7709\"></td>\n        <td id=\"LC7709\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">ctor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">create</span>(<span class=\"pl-smi\">superCtor</span>.<span class=\"pl-c1\">prototype</span>, {</td>\n      </tr>\n      <tr>\n        <td id=\"L7710\" class=\"blob-num js-line-number\" data-line-number=\"7710\"></td>\n        <td id=\"LC7710\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">constructor</span>: {</td>\n      </tr>\n      <tr>\n        <td id=\"L7711\" class=\"blob-num js-line-number\" data-line-number=\"7711\"></td>\n        <td id=\"LC7711\" class=\"blob-code blob-code-inner js-file-line\">        value: ctor,</td>\n      </tr>\n      <tr>\n        <td id=\"L7712\" class=\"blob-num js-line-number\" data-line-number=\"7712\"></td>\n        <td id=\"LC7712\" class=\"blob-code blob-code-inner js-file-line\">        enumerable: false,</td>\n      </tr>\n      <tr>\n        <td id=\"L7713\" class=\"blob-num js-line-number\" data-line-number=\"7713\"></td>\n        <td id=\"LC7713\" class=\"blob-code blob-code-inner js-file-line\">        writable: true,</td>\n      </tr>\n      <tr>\n        <td id=\"L7714\" class=\"blob-num js-line-number\" data-line-number=\"7714\"></td>\n        <td id=\"LC7714\" class=\"blob-code blob-code-inner js-file-line\">        configurable: true</td>\n      </tr>\n      <tr>\n        <td id=\"L7715\" class=\"blob-num js-line-number\" data-line-number=\"7715\"></td>\n        <td id=\"LC7715\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L7716\" class=\"blob-num js-line-number\" data-line-number=\"7716\"></td>\n        <td id=\"LC7716\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L7717\" class=\"blob-num js-line-number\" data-line-number=\"7717\"></td>\n        <td id=\"LC7717\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L7718\" class=\"blob-num js-line-number\" data-line-number=\"7718\"></td>\n        <td id=\"LC7718\" class=\"blob-code blob-code-inner js-file-line\">} <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7719\" class=\"blob-num js-line-number\" data-line-number=\"7719\"></td>\n        <td id=\"LC7719\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-en\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">inherits</span>(<span class=\"pl-smi\">ctor</span>, <span class=\"pl-smi\">superCtor</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7720\" class=\"blob-num js-line-number\" data-line-number=\"7720\"></td>\n        <td id=\"LC7720\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">ctor</span>.<span class=\"pl-smi\">super_</span> <span class=\"pl-k\">=</span> superCtor</td>\n      </tr>\n      <tr>\n        <td id=\"L7721\" class=\"blob-num js-line-number\" data-line-number=\"7721\"></td>\n        <td id=\"LC7721\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> <span class=\"pl-en\">TempCtor</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> () {}</td>\n      </tr>\n      <tr>\n        <td id=\"L7722\" class=\"blob-num js-line-number\" data-line-number=\"7722\"></td>\n        <td id=\"LC7722\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">TempCtor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">superCtor</span>.<span class=\"pl-c1\">prototype</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7723\" class=\"blob-num js-line-number\" data-line-number=\"7723\"></td>\n        <td id=\"LC7723\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">ctor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">TempCtor</span>()</td>\n      </tr>\n      <tr>\n        <td id=\"L7724\" class=\"blob-num js-line-number\" data-line-number=\"7724\"></td>\n        <td id=\"LC7724\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">ctor</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-c1\">constructor</span> <span class=\"pl-k\">=</span> ctor</td>\n      </tr>\n      <tr>\n        <td id=\"L7725\" class=\"blob-num js-line-number\" data-line-number=\"7725\"></td>\n        <td id=\"LC7725\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L7726\" class=\"blob-num js-line-number\" data-line-number=\"7726\"></td>\n        <td id=\"LC7726\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7727\" class=\"blob-num js-line-number\" data-line-number=\"7727\"></td>\n        <td id=\"LC7727\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7728\" class=\"blob-num js-line-number\" data-line-number=\"7728\"></td>\n        <td id=\"LC7728\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">58</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L7729\" class=\"blob-num js-line-number\" data-line-number=\"7729\"></td>\n        <td id=\"LC7729\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7730\" class=\"blob-num js-line-number\" data-line-number=\"7730\"></td>\n        <td id=\"LC7730\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">process</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L7731\" class=\"blob-num js-line-number\" data-line-number=\"7731\"></td>\n        <td id=\"LC7731\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7732\" class=\"blob-num js-line-number\" data-line-number=\"7732\"></td>\n        <td id=\"LC7732\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">nextTick</span> <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span> () {</td>\n      </tr>\n      <tr>\n        <td id=\"L7733\" class=\"blob-num js-line-number\" data-line-number=\"7733\"></td>\n        <td id=\"LC7733\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> canSetImmediate <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7734\" class=\"blob-num js-line-number\" data-line-number=\"7734\"></td>\n        <td id=\"LC7734\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">window</span>.<span class=\"pl-smi\">setImmediate</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7735\" class=\"blob-num js-line-number\" data-line-number=\"7735\"></td>\n        <td id=\"LC7735\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> canPost <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7736\" class=\"blob-num js-line-number\" data-line-number=\"7736\"></td>\n        <td id=\"LC7736\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">window</span>.<span class=\"pl-smi\">postMessage</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">window</span>.<span class=\"pl-smi\">addEventListener</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7737\" class=\"blob-num js-line-number\" data-line-number=\"7737\"></td>\n        <td id=\"LC7737\" class=\"blob-code blob-code-inner js-file-line\">    ;</td>\n      </tr>\n      <tr>\n        <td id=\"L7738\" class=\"blob-num js-line-number\" data-line-number=\"7738\"></td>\n        <td id=\"LC7738\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7739\" class=\"blob-num js-line-number\" data-line-number=\"7739\"></td>\n        <td id=\"LC7739\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (canSetImmediate) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7740\" class=\"blob-num js-line-number\" data-line-number=\"7740\"></td>\n        <td id=\"LC7740\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">f</span>) { <span class=\"pl-k\">return</span> <span class=\"pl-c1\">window</span>.<span class=\"pl-en\">setImmediate</span>(f) };</td>\n      </tr>\n      <tr>\n        <td id=\"L7741\" class=\"blob-num js-line-number\" data-line-number=\"7741\"></td>\n        <td id=\"LC7741\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7742\" class=\"blob-num js-line-number\" data-line-number=\"7742\"></td>\n        <td id=\"LC7742\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7743\" class=\"blob-num js-line-number\" data-line-number=\"7743\"></td>\n        <td id=\"LC7743\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (canPost) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7744\" class=\"blob-num js-line-number\" data-line-number=\"7744\"></td>\n        <td id=\"LC7744\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> queue <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L7745\" class=\"blob-num js-line-number\" data-line-number=\"7745\"></td>\n        <td id=\"LC7745\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-c1\">window</span>.<span class=\"pl-en\">addEventListener</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>message<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">ev</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7746\" class=\"blob-num js-line-number\" data-line-number=\"7746\"></td>\n        <td id=\"LC7746\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">var</span> source <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ev</span>.<span class=\"pl-c1\">source</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7747\" class=\"blob-num js-line-number\" data-line-number=\"7747\"></td>\n        <td id=\"LC7747\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">if</span> ((source <span class=\"pl-k\">===</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">||</span> source <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">ev</span>.<span class=\"pl-c1\">data</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>process-tick<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7748\" class=\"blob-num js-line-number\" data-line-number=\"7748\"></td>\n        <td id=\"LC7748\" class=\"blob-code blob-code-inner js-file-line\">                <span class=\"pl-smi\">ev</span>.<span class=\"pl-en\">stopPropagation</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L7749\" class=\"blob-num js-line-number\" data-line-number=\"7749\"></td>\n        <td id=\"LC7749\" class=\"blob-code blob-code-inner js-file-line\">                <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">queue</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7750\" class=\"blob-num js-line-number\" data-line-number=\"7750\"></td>\n        <td id=\"LC7750\" class=\"blob-code blob-code-inner js-file-line\">                    <span class=\"pl-k\">var</span> fn <span class=\"pl-k\">=</span> <span class=\"pl-smi\">queue</span>.<span class=\"pl-c1\">shift</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L7751\" class=\"blob-num js-line-number\" data-line-number=\"7751\"></td>\n        <td id=\"LC7751\" class=\"blob-code blob-code-inner js-file-line\">                    <span class=\"pl-en\">fn</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L7752\" class=\"blob-num js-line-number\" data-line-number=\"7752\"></td>\n        <td id=\"LC7752\" class=\"blob-code blob-code-inner js-file-line\">                }</td>\n      </tr>\n      <tr>\n        <td id=\"L7753\" class=\"blob-num js-line-number\" data-line-number=\"7753\"></td>\n        <td id=\"LC7753\" class=\"blob-code blob-code-inner js-file-line\">            }</td>\n      </tr>\n      <tr>\n        <td id=\"L7754\" class=\"blob-num js-line-number\" data-line-number=\"7754\"></td>\n        <td id=\"LC7754\" class=\"blob-code blob-code-inner js-file-line\">        }, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7755\" class=\"blob-num js-line-number\" data-line-number=\"7755\"></td>\n        <td id=\"LC7755\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7756\" class=\"blob-num js-line-number\" data-line-number=\"7756\"></td>\n        <td id=\"LC7756\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">nextTick</span>(<span class=\"pl-smi\">fn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7757\" class=\"blob-num js-line-number\" data-line-number=\"7757\"></td>\n        <td id=\"LC7757\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-smi\">queue</span>.<span class=\"pl-c1\">push</span>(fn);</td>\n      </tr>\n      <tr>\n        <td id=\"L7758\" class=\"blob-num js-line-number\" data-line-number=\"7758\"></td>\n        <td id=\"LC7758\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-c1\">window</span>.<span class=\"pl-en\">postMessage</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>process-tick<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>*<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7759\" class=\"blob-num js-line-number\" data-line-number=\"7759\"></td>\n        <td id=\"LC7759\" class=\"blob-code blob-code-inner js-file-line\">        };</td>\n      </tr>\n      <tr>\n        <td id=\"L7760\" class=\"blob-num js-line-number\" data-line-number=\"7760\"></td>\n        <td id=\"LC7760\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L7761\" class=\"blob-num js-line-number\" data-line-number=\"7761\"></td>\n        <td id=\"LC7761\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7762\" class=\"blob-num js-line-number\" data-line-number=\"7762\"></td>\n        <td id=\"LC7762\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">nextTick</span>(<span class=\"pl-smi\">fn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7763\" class=\"blob-num js-line-number\" data-line-number=\"7763\"></td>\n        <td id=\"LC7763\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-c1\">setTimeout</span>(fn, <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7764\" class=\"blob-num js-line-number\" data-line-number=\"7764\"></td>\n        <td id=\"LC7764\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L7765\" class=\"blob-num js-line-number\" data-line-number=\"7765\"></td>\n        <td id=\"LC7765\" class=\"blob-code blob-code-inner js-file-line\">})();</td>\n      </tr>\n      <tr>\n        <td id=\"L7766\" class=\"blob-num js-line-number\" data-line-number=\"7766\"></td>\n        <td id=\"LC7766\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7767\" class=\"blob-num js-line-number\" data-line-number=\"7767\"></td>\n        <td id=\"LC7767\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-c1\">title</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>browser<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7768\" class=\"blob-num js-line-number\" data-line-number=\"7768\"></td>\n        <td id=\"LC7768\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">browser</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7769\" class=\"blob-num js-line-number\" data-line-number=\"7769\"></td>\n        <td id=\"LC7769\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">env</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L7770\" class=\"blob-num js-line-number\" data-line-number=\"7770\"></td>\n        <td id=\"LC7770\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">argv</span> <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L7771\" class=\"blob-num js-line-number\" data-line-number=\"7771\"></td>\n        <td id=\"LC7771\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7772\" class=\"blob-num js-line-number\" data-line-number=\"7772\"></td>\n        <td id=\"LC7772\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">noop</span>() {}</td>\n      </tr>\n      <tr>\n        <td id=\"L7773\" class=\"blob-num js-line-number\" data-line-number=\"7773\"></td>\n        <td id=\"LC7773\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7774\" class=\"blob-num js-line-number\" data-line-number=\"7774\"></td>\n        <td id=\"LC7774\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">on</span> <span class=\"pl-k\">=</span> noop;</td>\n      </tr>\n      <tr>\n        <td id=\"L7775\" class=\"blob-num js-line-number\" data-line-number=\"7775\"></td>\n        <td id=\"LC7775\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">addListener</span> <span class=\"pl-k\">=</span> noop;</td>\n      </tr>\n      <tr>\n        <td id=\"L7776\" class=\"blob-num js-line-number\" data-line-number=\"7776\"></td>\n        <td id=\"LC7776\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">once</span> <span class=\"pl-k\">=</span> noop;</td>\n      </tr>\n      <tr>\n        <td id=\"L7777\" class=\"blob-num js-line-number\" data-line-number=\"7777\"></td>\n        <td id=\"LC7777\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">off</span> <span class=\"pl-k\">=</span> noop;</td>\n      </tr>\n      <tr>\n        <td id=\"L7778\" class=\"blob-num js-line-number\" data-line-number=\"7778\"></td>\n        <td id=\"LC7778\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">removeListener</span> <span class=\"pl-k\">=</span> noop;</td>\n      </tr>\n      <tr>\n        <td id=\"L7779\" class=\"blob-num js-line-number\" data-line-number=\"7779\"></td>\n        <td id=\"LC7779\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">removeAllListeners</span> <span class=\"pl-k\">=</span> noop;</td>\n      </tr>\n      <tr>\n        <td id=\"L7780\" class=\"blob-num js-line-number\" data-line-number=\"7780\"></td>\n        <td id=\"LC7780\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">emit</span> <span class=\"pl-k\">=</span> noop;</td>\n      </tr>\n      <tr>\n        <td id=\"L7781\" class=\"blob-num js-line-number\" data-line-number=\"7781\"></td>\n        <td id=\"LC7781\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7782\" class=\"blob-num js-line-number\" data-line-number=\"7782\"></td>\n        <td id=\"LC7782\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-en\">binding</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">name</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7783\" class=\"blob-num js-line-number\" data-line-number=\"7783\"></td>\n        <td id=\"LC7783\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>process.binding is not supported<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7784\" class=\"blob-num js-line-number\" data-line-number=\"7784\"></td>\n        <td id=\"LC7784\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L7785\" class=\"blob-num js-line-number\" data-line-number=\"7785\"></td>\n        <td id=\"LC7785\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7786\" class=\"blob-num js-line-number\" data-line-number=\"7786\"></td>\n        <td id=\"LC7786\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-en\">cwd</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> () { <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span> };</td>\n      </tr>\n      <tr>\n        <td id=\"L7787\" class=\"blob-num js-line-number\" data-line-number=\"7787\"></td>\n        <td id=\"LC7787\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">process</span>.<span class=\"pl-en\">chdir</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">dir</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7788\" class=\"blob-num js-line-number\" data-line-number=\"7788\"></td>\n        <td id=\"LC7788\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>process.chdir is not supported<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7789\" class=\"blob-num js-line-number\" data-line-number=\"7789\"></td>\n        <td id=\"LC7789\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L7790\" class=\"blob-num js-line-number\" data-line-number=\"7790\"></td>\n        <td id=\"LC7790\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7791\" class=\"blob-num js-line-number\" data-line-number=\"7791\"></td>\n        <td id=\"LC7791\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">59</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L7792\" class=\"blob-num js-line-number\" data-line-number=\"7792\"></td>\n        <td id=\"LC7792\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span> (<span class=\"pl-c1\">global</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L7793\" class=\"blob-num js-line-number\" data-line-number=\"7793\"></td>\n        <td id=\"LC7793\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7794\" class=\"blob-num js-line-number\" data-line-number=\"7794\"></td>\n        <td id=\"LC7794\" class=\"blob-code blob-code-inner js-file-line\">;(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">root</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7795\" class=\"blob-num js-line-number\" data-line-number=\"7795\"></td>\n        <td id=\"LC7795\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7796\" class=\"blob-num js-line-number\" data-line-number=\"7796\"></td>\n        <td id=\"LC7796\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7797\" class=\"blob-num js-line-number\" data-line-number=\"7797\"></td>\n        <td id=\"LC7797\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">var</span> freeExports <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">exports</span> <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">exports</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7798\" class=\"blob-num js-line-number\" data-line-number=\"7798\"></td>\n        <td id=\"LC7798\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">var</span> freeModule <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">module</span> <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">module</span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7799\" class=\"blob-num js-line-number\" data-line-number=\"7799\"></td>\n        <td id=\"LC7799\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">==</span> freeExports <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">module</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7800\" class=\"blob-num js-line-number\" data-line-number=\"7800\"></td>\n        <td id=\"LC7800\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">var</span> freeGlobal <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">global</span> <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">global</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7801\" class=\"blob-num js-line-number\" data-line-number=\"7801\"></td>\n        <td id=\"LC7801\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">if</span> (<span class=\"pl-smi\">freeGlobal</span>.<span class=\"pl-c1\">global</span> <span class=\"pl-k\">===</span> freeGlobal <span class=\"pl-k\">||</span> <span class=\"pl-smi\">freeGlobal</span>.<span class=\"pl-smi\">window</span> <span class=\"pl-k\">===</span> freeGlobal) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7802\" class=\"blob-num js-line-number\" data-line-number=\"7802\"></td>\n        <td id=\"LC7802\" class=\"blob-code blob-code-inner js-file-line\">\t\troot <span class=\"pl-k\">=</span> freeGlobal;</td>\n      </tr>\n      <tr>\n        <td id=\"L7803\" class=\"blob-num js-line-number\" data-line-number=\"7803\"></td>\n        <td id=\"LC7803\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7804\" class=\"blob-num js-line-number\" data-line-number=\"7804\"></td>\n        <td id=\"LC7804\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7805\" class=\"blob-num js-line-number\" data-line-number=\"7805\"></td>\n        <td id=\"LC7805\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7806\" class=\"blob-num js-line-number\" data-line-number=\"7806\"></td>\n        <td id=\"LC7806\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">var</span> punycode,</td>\n      </tr>\n      <tr>\n        <td id=\"L7807\" class=\"blob-num js-line-number\" data-line-number=\"7807\"></td>\n        <td id=\"LC7807\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7808\" class=\"blob-num js-line-number\" data-line-number=\"7808\"></td>\n        <td id=\"LC7808\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7809\" class=\"blob-num js-line-number\" data-line-number=\"7809\"></td>\n        <td id=\"LC7809\" class=\"blob-code blob-code-inner js-file-line\">\tmaxInt <span class=\"pl-k\">=</span> <span class=\"pl-c1\">2147483647</span>, <span class=\"pl-c\">// aka. 0x7FFFFFFF or 2^31-1</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7810\" class=\"blob-num js-line-number\" data-line-number=\"7810\"></td>\n        <td id=\"LC7810\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7811\" class=\"blob-num js-line-number\" data-line-number=\"7811\"></td>\n        <td id=\"LC7811\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7812\" class=\"blob-num js-line-number\" data-line-number=\"7812\"></td>\n        <td id=\"LC7812\" class=\"blob-code blob-code-inner js-file-line\">\tbase <span class=\"pl-k\">=</span> <span class=\"pl-c1\">36</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7813\" class=\"blob-num js-line-number\" data-line-number=\"7813\"></td>\n        <td id=\"LC7813\" class=\"blob-code blob-code-inner js-file-line\">\ttMin <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7814\" class=\"blob-num js-line-number\" data-line-number=\"7814\"></td>\n        <td id=\"LC7814\" class=\"blob-code blob-code-inner js-file-line\">\ttMax <span class=\"pl-k\">=</span> <span class=\"pl-c1\">26</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7815\" class=\"blob-num js-line-number\" data-line-number=\"7815\"></td>\n        <td id=\"LC7815\" class=\"blob-code blob-code-inner js-file-line\">\tskew <span class=\"pl-k\">=</span> <span class=\"pl-c1\">38</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7816\" class=\"blob-num js-line-number\" data-line-number=\"7816\"></td>\n        <td id=\"LC7816\" class=\"blob-code blob-code-inner js-file-line\">\tdamp <span class=\"pl-k\">=</span> <span class=\"pl-c1\">700</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7817\" class=\"blob-num js-line-number\" data-line-number=\"7817\"></td>\n        <td id=\"LC7817\" class=\"blob-code blob-code-inner js-file-line\">\tinitialBias <span class=\"pl-k\">=</span> <span class=\"pl-c1\">72</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7818\" class=\"blob-num js-line-number\" data-line-number=\"7818\"></td>\n        <td id=\"LC7818\" class=\"blob-code blob-code-inner js-file-line\">\tinitialN <span class=\"pl-k\">=</span> <span class=\"pl-c1\">128</span>, <span class=\"pl-c\">// 0x80</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7819\" class=\"blob-num js-line-number\" data-line-number=\"7819\"></td>\n        <td id=\"LC7819\" class=\"blob-code blob-code-inner js-file-line\">\tdelimiter <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>-<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-c\">// &#39;\\x2D&#39;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7820\" class=\"blob-num js-line-number\" data-line-number=\"7820\"></td>\n        <td id=\"LC7820\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7821\" class=\"blob-num js-line-number\" data-line-number=\"7821\"></td>\n        <td id=\"LC7821\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7822\" class=\"blob-num js-line-number\" data-line-number=\"7822\"></td>\n        <td id=\"LC7822\" class=\"blob-code blob-code-inner js-file-line\">\tregexPunycode <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span>xn--<span class=\"pl-pds\">/</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7823\" class=\"blob-num js-line-number\" data-line-number=\"7823\"></td>\n        <td id=\"LC7823\" class=\"blob-code blob-code-inner js-file-line\">\tregexNonASCII <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-c1\">[<span class=\"pl-k\">^</span><span class=\"pl-c1\"> -~</span>]</span><span class=\"pl-pds\">/</span></span>, <span class=\"pl-c\">// unprintable ASCII chars + non-ASCII chars</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7824\" class=\"blob-num js-line-number\" data-line-number=\"7824\"></td>\n        <td id=\"LC7824\" class=\"blob-code blob-code-inner js-file-line\">\tregexSeparators <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\x</span>2E<span class=\"pl-k\">|</span><span class=\"pl-cce\">\\u</span>3002<span class=\"pl-k\">|</span><span class=\"pl-cce\">\\u</span>FF0E<span class=\"pl-k\">|</span><span class=\"pl-cce\">\\u</span>FF61<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-c\">// RFC 3490 separators</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7825\" class=\"blob-num js-line-number\" data-line-number=\"7825\"></td>\n        <td id=\"LC7825\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7826\" class=\"blob-num js-line-number\" data-line-number=\"7826\"></td>\n        <td id=\"LC7826\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7827\" class=\"blob-num js-line-number\" data-line-number=\"7827\"></td>\n        <td id=\"LC7827\" class=\"blob-code blob-code-inner js-file-line\">\terrors <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7828\" class=\"blob-num js-line-number\" data-line-number=\"7828\"></td>\n        <td id=\"LC7828\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>overflow<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Overflow: input needs wider integers to process<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7829\" class=\"blob-num js-line-number\" data-line-number=\"7829\"></td>\n        <td id=\"LC7829\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>not-basic<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Illegal input &gt;= 0x80 (not a basic code point)<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7830\" class=\"blob-num js-line-number\" data-line-number=\"7830\"></td>\n        <td id=\"LC7830\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>invalid-input<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Invalid input<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L7831\" class=\"blob-num js-line-number\" data-line-number=\"7831\"></td>\n        <td id=\"LC7831\" class=\"blob-code blob-code-inner js-file-line\">\t},</td>\n      </tr>\n      <tr>\n        <td id=\"L7832\" class=\"blob-num js-line-number\" data-line-number=\"7832\"></td>\n        <td id=\"LC7832\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7833\" class=\"blob-num js-line-number\" data-line-number=\"7833\"></td>\n        <td id=\"LC7833\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7834\" class=\"blob-num js-line-number\" data-line-number=\"7834\"></td>\n        <td id=\"LC7834\" class=\"blob-code blob-code-inner js-file-line\">\tbaseMinusTMin <span class=\"pl-k\">=</span> base <span class=\"pl-k\">-</span> tMin,</td>\n      </tr>\n      <tr>\n        <td id=\"L7835\" class=\"blob-num js-line-number\" data-line-number=\"7835\"></td>\n        <td id=\"LC7835\" class=\"blob-code blob-code-inner js-file-line\">\tfloor <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-smi\">floor</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7836\" class=\"blob-num js-line-number\" data-line-number=\"7836\"></td>\n        <td id=\"LC7836\" class=\"blob-code blob-code-inner js-file-line\">\tstringFromCharCode <span class=\"pl-k\">=</span> <span class=\"pl-c1\">String</span>.<span class=\"pl-smi\">fromCharCode</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7837\" class=\"blob-num js-line-number\" data-line-number=\"7837\"></td>\n        <td id=\"LC7837\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7838\" class=\"blob-num js-line-number\" data-line-number=\"7838\"></td>\n        <td id=\"LC7838\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7839\" class=\"blob-num js-line-number\" data-line-number=\"7839\"></td>\n        <td id=\"LC7839\" class=\"blob-code blob-code-inner js-file-line\">\tkey;</td>\n      </tr>\n      <tr>\n        <td id=\"L7840\" class=\"blob-num js-line-number\" data-line-number=\"7840\"></td>\n        <td id=\"LC7840\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7841\" class=\"blob-num js-line-number\" data-line-number=\"7841\"></td>\n        <td id=\"LC7841\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7842\" class=\"blob-num js-line-number\" data-line-number=\"7842\"></td>\n        <td id=\"LC7842\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7843\" class=\"blob-num js-line-number\" data-line-number=\"7843\"></td>\n        <td id=\"LC7843\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7844\" class=\"blob-num js-line-number\" data-line-number=\"7844\"></td>\n        <td id=\"LC7844\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">error</span>(<span class=\"pl-smi\">type</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7845\" class=\"blob-num js-line-number\" data-line-number=\"7845\"></td>\n        <td id=\"LC7845\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">throw</span> <span class=\"pl-en\">RangeError</span>(errors[type]);</td>\n      </tr>\n      <tr>\n        <td id=\"L7846\" class=\"blob-num js-line-number\" data-line-number=\"7846\"></td>\n        <td id=\"LC7846\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7847\" class=\"blob-num js-line-number\" data-line-number=\"7847\"></td>\n        <td id=\"LC7847\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7848\" class=\"blob-num js-line-number\" data-line-number=\"7848\"></td>\n        <td id=\"LC7848\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7849\" class=\"blob-num js-line-number\" data-line-number=\"7849\"></td>\n        <td id=\"LC7849\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">map</span>(<span class=\"pl-smi\">array</span>, <span class=\"pl-smi\">fn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7850\" class=\"blob-num js-line-number\" data-line-number=\"7850\"></td>\n        <td id=\"LC7850\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">array</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7851\" class=\"blob-num js-line-number\" data-line-number=\"7851\"></td>\n        <td id=\"LC7851\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">while</span> (length<span class=\"pl-k\">--</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7852\" class=\"blob-num js-line-number\" data-line-number=\"7852\"></td>\n        <td id=\"LC7852\" class=\"blob-code blob-code-inner js-file-line\">\t\t\tarray[length] <span class=\"pl-k\">=</span> <span class=\"pl-en\">fn</span>(array[length]);</td>\n      </tr>\n      <tr>\n        <td id=\"L7853\" class=\"blob-num js-line-number\" data-line-number=\"7853\"></td>\n        <td id=\"LC7853\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7854\" class=\"blob-num js-line-number\" data-line-number=\"7854\"></td>\n        <td id=\"LC7854\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> array;</td>\n      </tr>\n      <tr>\n        <td id=\"L7855\" class=\"blob-num js-line-number\" data-line-number=\"7855\"></td>\n        <td id=\"LC7855\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7856\" class=\"blob-num js-line-number\" data-line-number=\"7856\"></td>\n        <td id=\"LC7856\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7857\" class=\"blob-num js-line-number\" data-line-number=\"7857\"></td>\n        <td id=\"LC7857\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7858\" class=\"blob-num js-line-number\" data-line-number=\"7858\"></td>\n        <td id=\"LC7858\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">mapDomain</span>(<span class=\"pl-smi\">string</span>, <span class=\"pl-smi\">fn</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7859\" class=\"blob-num js-line-number\" data-line-number=\"7859\"></td>\n        <td id=\"LC7859\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> <span class=\"pl-en\">map</span>(<span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">split</span>(regexSeparators), fn).<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7860\" class=\"blob-num js-line-number\" data-line-number=\"7860\"></td>\n        <td id=\"LC7860\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7861\" class=\"blob-num js-line-number\" data-line-number=\"7861\"></td>\n        <td id=\"LC7861\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7862\" class=\"blob-num js-line-number\" data-line-number=\"7862\"></td>\n        <td id=\"LC7862\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7863\" class=\"blob-num js-line-number\" data-line-number=\"7863\"></td>\n        <td id=\"LC7863\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">ucs2decode</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7864\" class=\"blob-num js-line-number\" data-line-number=\"7864\"></td>\n        <td id=\"LC7864\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">var</span> output <span class=\"pl-k\">=</span> [],</td>\n      </tr>\n      <tr>\n        <td id=\"L7865\" class=\"blob-num js-line-number\" data-line-number=\"7865\"></td>\n        <td id=\"LC7865\" class=\"blob-code blob-code-inner js-file-line\">\t\t    counter <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7866\" class=\"blob-num js-line-number\" data-line-number=\"7866\"></td>\n        <td id=\"LC7866\" class=\"blob-code blob-code-inner js-file-line\">\t\t    length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">length</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7867\" class=\"blob-num js-line-number\" data-line-number=\"7867\"></td>\n        <td id=\"LC7867\" class=\"blob-code blob-code-inner js-file-line\">\t\t    value,</td>\n      </tr>\n      <tr>\n        <td id=\"L7868\" class=\"blob-num js-line-number\" data-line-number=\"7868\"></td>\n        <td id=\"LC7868\" class=\"blob-code blob-code-inner js-file-line\">\t\t    extra;</td>\n      </tr>\n      <tr>\n        <td id=\"L7869\" class=\"blob-num js-line-number\" data-line-number=\"7869\"></td>\n        <td id=\"LC7869\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">while</span> (counter <span class=\"pl-k\">&lt;</span> length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7870\" class=\"blob-num js-line-number\" data-line-number=\"7870\"></td>\n        <td id=\"LC7870\" class=\"blob-code blob-code-inner js-file-line\">\t\t\tvalue <span class=\"pl-k\">=</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">charCodeAt</span>(counter<span class=\"pl-k\">++</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7871\" class=\"blob-num js-line-number\" data-line-number=\"7871\"></td>\n        <td id=\"LC7871\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">if</span> (value <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0xD800</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">&lt;=</span> <span class=\"pl-c1\">0xDBFF</span> <span class=\"pl-k\">&amp;&amp;</span> counter <span class=\"pl-k\">&lt;</span> length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7872\" class=\"blob-num js-line-number\" data-line-number=\"7872\"></td>\n        <td id=\"LC7872\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\textra <span class=\"pl-k\">=</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">charCodeAt</span>(counter<span class=\"pl-k\">++</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7873\" class=\"blob-num js-line-number\" data-line-number=\"7873\"></td>\n        <td id=\"LC7873\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">if</span> ((extra <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0xFC00</span>) <span class=\"pl-k\">==</span> <span class=\"pl-c1\">0xDC00</span>) { <span class=\"pl-c\">// low surrogate</span></td>\n      </tr>\n      <tr>\n        <td id=\"L7874\" class=\"blob-num js-line-number\" data-line-number=\"7874\"></td>\n        <td id=\"LC7874\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t<span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">push</span>(((value <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x3FF</span>) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">10</span>) <span class=\"pl-k\">+</span> (extra <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x3FF</span>) <span class=\"pl-k\">+</span> <span class=\"pl-c1\">0x10000</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7875\" class=\"blob-num js-line-number\" data-line-number=\"7875\"></td>\n        <td id=\"LC7875\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t} <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7876\" class=\"blob-num js-line-number\" data-line-number=\"7876\"></td>\n        <td id=\"LC7876\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t<span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">push</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L7877\" class=\"blob-num js-line-number\" data-line-number=\"7877\"></td>\n        <td id=\"LC7877\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\tcounter<span class=\"pl-k\">--</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7878\" class=\"blob-num js-line-number\" data-line-number=\"7878\"></td>\n        <td id=\"LC7878\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7879\" class=\"blob-num js-line-number\" data-line-number=\"7879\"></td>\n        <td id=\"LC7879\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t} <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L7880\" class=\"blob-num js-line-number\" data-line-number=\"7880\"></td>\n        <td id=\"LC7880\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">push</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L7881\" class=\"blob-num js-line-number\" data-line-number=\"7881\"></td>\n        <td id=\"LC7881\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7882\" class=\"blob-num js-line-number\" data-line-number=\"7882\"></td>\n        <td id=\"LC7882\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7883\" class=\"blob-num js-line-number\" data-line-number=\"7883\"></td>\n        <td id=\"LC7883\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> output;</td>\n      </tr>\n      <tr>\n        <td id=\"L7884\" class=\"blob-num js-line-number\" data-line-number=\"7884\"></td>\n        <td id=\"LC7884\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7885\" class=\"blob-num js-line-number\" data-line-number=\"7885\"></td>\n        <td id=\"LC7885\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7886\" class=\"blob-num js-line-number\" data-line-number=\"7886\"></td>\n        <td id=\"LC7886\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7887\" class=\"blob-num js-line-number\" data-line-number=\"7887\"></td>\n        <td id=\"LC7887\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">ucs2encode</span>(<span class=\"pl-smi\">array</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7888\" class=\"blob-num js-line-number\" data-line-number=\"7888\"></td>\n        <td id=\"LC7888\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> <span class=\"pl-en\">map</span>(array, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7889\" class=\"blob-num js-line-number\" data-line-number=\"7889\"></td>\n        <td id=\"LC7889\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">var</span> output <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7890\" class=\"blob-num js-line-number\" data-line-number=\"7890\"></td>\n        <td id=\"LC7890\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">if</span> (value <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0xFFFF</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7891\" class=\"blob-num js-line-number\" data-line-number=\"7891\"></td>\n        <td id=\"LC7891\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\tvalue <span class=\"pl-k\">-=</span> <span class=\"pl-c1\">0x10000</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7892\" class=\"blob-num js-line-number\" data-line-number=\"7892\"></td>\n        <td id=\"LC7892\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\toutput <span class=\"pl-k\">+=</span> <span class=\"pl-en\">stringFromCharCode</span>(value <span class=\"pl-k\">&gt;&gt;&gt;</span> <span class=\"pl-c1\">10</span> <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x3FF</span> <span class=\"pl-k\">|</span> <span class=\"pl-c1\">0xD800</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7893\" class=\"blob-num js-line-number\" data-line-number=\"7893\"></td>\n        <td id=\"LC7893\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\tvalue <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0xDC00</span> <span class=\"pl-k\">|</span> value <span class=\"pl-k\">&amp;</span> <span class=\"pl-c1\">0x3FF</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7894\" class=\"blob-num js-line-number\" data-line-number=\"7894\"></td>\n        <td id=\"LC7894\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7895\" class=\"blob-num js-line-number\" data-line-number=\"7895\"></td>\n        <td id=\"LC7895\" class=\"blob-code blob-code-inner js-file-line\">\t\t\toutput <span class=\"pl-k\">+=</span> <span class=\"pl-en\">stringFromCharCode</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L7896\" class=\"blob-num js-line-number\" data-line-number=\"7896\"></td>\n        <td id=\"LC7896\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> output;</td>\n      </tr>\n      <tr>\n        <td id=\"L7897\" class=\"blob-num js-line-number\" data-line-number=\"7897\"></td>\n        <td id=\"LC7897\" class=\"blob-code blob-code-inner js-file-line\">\t\t}).<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7898\" class=\"blob-num js-line-number\" data-line-number=\"7898\"></td>\n        <td id=\"LC7898\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7899\" class=\"blob-num js-line-number\" data-line-number=\"7899\"></td>\n        <td id=\"LC7899\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7900\" class=\"blob-num js-line-number\" data-line-number=\"7900\"></td>\n        <td id=\"LC7900\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7901\" class=\"blob-num js-line-number\" data-line-number=\"7901\"></td>\n        <td id=\"LC7901\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">basicToDigit</span>(<span class=\"pl-smi\">codePoint</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7902\" class=\"blob-num js-line-number\" data-line-number=\"7902\"></td>\n        <td id=\"LC7902\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (codePoint <span class=\"pl-k\">-</span> <span class=\"pl-c1\">48</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">10</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7903\" class=\"blob-num js-line-number\" data-line-number=\"7903\"></td>\n        <td id=\"LC7903\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> codePoint <span class=\"pl-k\">-</span> <span class=\"pl-c1\">22</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7904\" class=\"blob-num js-line-number\" data-line-number=\"7904\"></td>\n        <td id=\"LC7904\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7905\" class=\"blob-num js-line-number\" data-line-number=\"7905\"></td>\n        <td id=\"LC7905\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (codePoint <span class=\"pl-k\">-</span> <span class=\"pl-c1\">65</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">26</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7906\" class=\"blob-num js-line-number\" data-line-number=\"7906\"></td>\n        <td id=\"LC7906\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> codePoint <span class=\"pl-k\">-</span> <span class=\"pl-c1\">65</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7907\" class=\"blob-num js-line-number\" data-line-number=\"7907\"></td>\n        <td id=\"LC7907\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7908\" class=\"blob-num js-line-number\" data-line-number=\"7908\"></td>\n        <td id=\"LC7908\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (codePoint <span class=\"pl-k\">-</span> <span class=\"pl-c1\">97</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">26</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7909\" class=\"blob-num js-line-number\" data-line-number=\"7909\"></td>\n        <td id=\"LC7909\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> codePoint <span class=\"pl-k\">-</span> <span class=\"pl-c1\">97</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7910\" class=\"blob-num js-line-number\" data-line-number=\"7910\"></td>\n        <td id=\"LC7910\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7911\" class=\"blob-num js-line-number\" data-line-number=\"7911\"></td>\n        <td id=\"LC7911\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> base;</td>\n      </tr>\n      <tr>\n        <td id=\"L7912\" class=\"blob-num js-line-number\" data-line-number=\"7912\"></td>\n        <td id=\"LC7912\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7913\" class=\"blob-num js-line-number\" data-line-number=\"7913\"></td>\n        <td id=\"LC7913\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7914\" class=\"blob-num js-line-number\" data-line-number=\"7914\"></td>\n        <td id=\"LC7914\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7915\" class=\"blob-num js-line-number\" data-line-number=\"7915\"></td>\n        <td id=\"LC7915\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">digitToBasic</span>(<span class=\"pl-smi\">digit</span>, <span class=\"pl-smi\">flag</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7916\" class=\"blob-num js-line-number\" data-line-number=\"7916\"></td>\n        <td id=\"LC7916\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> digit <span class=\"pl-k\">+</span> <span class=\"pl-c1\">22</span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">75</span> <span class=\"pl-k\">*</span> (digit <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">26</span>) <span class=\"pl-k\">-</span> ((flag <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">&lt;&lt;</span> <span class=\"pl-c1\">5</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7917\" class=\"blob-num js-line-number\" data-line-number=\"7917\"></td>\n        <td id=\"LC7917\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7918\" class=\"blob-num js-line-number\" data-line-number=\"7918\"></td>\n        <td id=\"LC7918\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7919\" class=\"blob-num js-line-number\" data-line-number=\"7919\"></td>\n        <td id=\"LC7919\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7920\" class=\"blob-num js-line-number\" data-line-number=\"7920\"></td>\n        <td id=\"LC7920\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">adapt</span>(<span class=\"pl-smi\">delta</span>, <span class=\"pl-smi\">numPoints</span>, <span class=\"pl-smi\">firstTime</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7921\" class=\"blob-num js-line-number\" data-line-number=\"7921\"></td>\n        <td id=\"LC7921\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">var</span> k <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7922\" class=\"blob-num js-line-number\" data-line-number=\"7922\"></td>\n        <td id=\"LC7922\" class=\"blob-code blob-code-inner js-file-line\">\t\tdelta <span class=\"pl-k\">=</span> firstTime <span class=\"pl-k\">?</span> <span class=\"pl-en\">floor</span>(delta <span class=\"pl-k\">/</span> damp) <span class=\"pl-k\">:</span> delta <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7923\" class=\"blob-num js-line-number\" data-line-number=\"7923\"></td>\n        <td id=\"LC7923\" class=\"blob-code blob-code-inner js-file-line\">\t\tdelta <span class=\"pl-k\">+=</span> <span class=\"pl-en\">floor</span>(delta <span class=\"pl-k\">/</span> numPoints);</td>\n      </tr>\n      <tr>\n        <td id=\"L7924\" class=\"blob-num js-line-number\" data-line-number=\"7924\"></td>\n        <td id=\"LC7924\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">for</span> (<span class=\"pl-c\">/* no initialization */</span>; delta <span class=\"pl-k\">&gt;</span> baseMinusTMin <span class=\"pl-k\">*</span> tMax <span class=\"pl-k\">&gt;&gt;</span> <span class=\"pl-c1\">1</span>; k <span class=\"pl-k\">+=</span> base) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7925\" class=\"blob-num js-line-number\" data-line-number=\"7925\"></td>\n        <td id=\"LC7925\" class=\"blob-code blob-code-inner js-file-line\">\t\t\tdelta <span class=\"pl-k\">=</span> <span class=\"pl-en\">floor</span>(delta <span class=\"pl-k\">/</span> baseMinusTMin);</td>\n      </tr>\n      <tr>\n        <td id=\"L7926\" class=\"blob-num js-line-number\" data-line-number=\"7926\"></td>\n        <td id=\"LC7926\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7927\" class=\"blob-num js-line-number\" data-line-number=\"7927\"></td>\n        <td id=\"LC7927\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> <span class=\"pl-en\">floor</span>(k <span class=\"pl-k\">+</span> (baseMinusTMin <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>) <span class=\"pl-k\">*</span> delta <span class=\"pl-k\">/</span> (delta <span class=\"pl-k\">+</span> skew));</td>\n      </tr>\n      <tr>\n        <td id=\"L7928\" class=\"blob-num js-line-number\" data-line-number=\"7928\"></td>\n        <td id=\"LC7928\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7929\" class=\"blob-num js-line-number\" data-line-number=\"7929\"></td>\n        <td id=\"LC7929\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7930\" class=\"blob-num js-line-number\" data-line-number=\"7930\"></td>\n        <td id=\"LC7930\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7931\" class=\"blob-num js-line-number\" data-line-number=\"7931\"></td>\n        <td id=\"LC7931\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">decode</span>(<span class=\"pl-smi\">input</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7932\" class=\"blob-num js-line-number\" data-line-number=\"7932\"></td>\n        <td id=\"LC7932\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">var</span> output <span class=\"pl-k\">=</span> [],</td>\n      </tr>\n      <tr>\n        <td id=\"L7933\" class=\"blob-num js-line-number\" data-line-number=\"7933\"></td>\n        <td id=\"LC7933\" class=\"blob-code blob-code-inner js-file-line\">\t\t    inputLength <span class=\"pl-k\">=</span> <span class=\"pl-smi\">input</span>.<span class=\"pl-c1\">length</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7934\" class=\"blob-num js-line-number\" data-line-number=\"7934\"></td>\n        <td id=\"LC7934\" class=\"blob-code blob-code-inner js-file-line\">\t\t    out,</td>\n      </tr>\n      <tr>\n        <td id=\"L7935\" class=\"blob-num js-line-number\" data-line-number=\"7935\"></td>\n        <td id=\"LC7935\" class=\"blob-code blob-code-inner js-file-line\">\t\t    i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L7936\" class=\"blob-num js-line-number\" data-line-number=\"7936\"></td>\n        <td id=\"LC7936\" class=\"blob-code blob-code-inner js-file-line\">\t\t    n <span class=\"pl-k\">=</span> initialN,</td>\n      </tr>\n      <tr>\n        <td id=\"L7937\" class=\"blob-num js-line-number\" data-line-number=\"7937\"></td>\n        <td id=\"LC7937\" class=\"blob-code blob-code-inner js-file-line\">\t\t    bias <span class=\"pl-k\">=</span> initialBias,</td>\n      </tr>\n      <tr>\n        <td id=\"L7938\" class=\"blob-num js-line-number\" data-line-number=\"7938\"></td>\n        <td id=\"LC7938\" class=\"blob-code blob-code-inner js-file-line\">\t\t    basic,</td>\n      </tr>\n      <tr>\n        <td id=\"L7939\" class=\"blob-num js-line-number\" data-line-number=\"7939\"></td>\n        <td id=\"LC7939\" class=\"blob-code blob-code-inner js-file-line\">\t\t    j,</td>\n      </tr>\n      <tr>\n        <td id=\"L7940\" class=\"blob-num js-line-number\" data-line-number=\"7940\"></td>\n        <td id=\"LC7940\" class=\"blob-code blob-code-inner js-file-line\">\t\t    index,</td>\n      </tr>\n      <tr>\n        <td id=\"L7941\" class=\"blob-num js-line-number\" data-line-number=\"7941\"></td>\n        <td id=\"LC7941\" class=\"blob-code blob-code-inner js-file-line\">\t\t    oldi,</td>\n      </tr>\n      <tr>\n        <td id=\"L7942\" class=\"blob-num js-line-number\" data-line-number=\"7942\"></td>\n        <td id=\"LC7942\" class=\"blob-code blob-code-inner js-file-line\">\t\t    w,</td>\n      </tr>\n      <tr>\n        <td id=\"L7943\" class=\"blob-num js-line-number\" data-line-number=\"7943\"></td>\n        <td id=\"LC7943\" class=\"blob-code blob-code-inner js-file-line\">\t\t    k,</td>\n      </tr>\n      <tr>\n        <td id=\"L7944\" class=\"blob-num js-line-number\" data-line-number=\"7944\"></td>\n        <td id=\"LC7944\" class=\"blob-code blob-code-inner js-file-line\">\t\t    digit,</td>\n      </tr>\n      <tr>\n        <td id=\"L7945\" class=\"blob-num js-line-number\" data-line-number=\"7945\"></td>\n        <td id=\"LC7945\" class=\"blob-code blob-code-inner js-file-line\">\t\t    t,</td>\n      </tr>\n      <tr>\n        <td id=\"L7946\" class=\"blob-num js-line-number\" data-line-number=\"7946\"></td>\n        <td id=\"LC7946\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7947\" class=\"blob-num js-line-number\" data-line-number=\"7947\"></td>\n        <td id=\"LC7947\" class=\"blob-code blob-code-inner js-file-line\">\t\t    baseMinusT;</td>\n      </tr>\n      <tr>\n        <td id=\"L7948\" class=\"blob-num js-line-number\" data-line-number=\"7948\"></td>\n        <td id=\"LC7948\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7949\" class=\"blob-num js-line-number\" data-line-number=\"7949\"></td>\n        <td id=\"LC7949\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7950\" class=\"blob-num js-line-number\" data-line-number=\"7950\"></td>\n        <td id=\"LC7950\" class=\"blob-code blob-code-inner js-file-line\">\t\tbasic <span class=\"pl-k\">=</span> <span class=\"pl-smi\">input</span>.<span class=\"pl-c1\">lastIndexOf</span>(delimiter);</td>\n      </tr>\n      <tr>\n        <td id=\"L7951\" class=\"blob-num js-line-number\" data-line-number=\"7951\"></td>\n        <td id=\"LC7951\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (basic <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7952\" class=\"blob-num js-line-number\" data-line-number=\"7952\"></td>\n        <td id=\"LC7952\" class=\"blob-code blob-code-inner js-file-line\">\t\t\tbasic <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7953\" class=\"blob-num js-line-number\" data-line-number=\"7953\"></td>\n        <td id=\"LC7953\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7954\" class=\"blob-num js-line-number\" data-line-number=\"7954\"></td>\n        <td id=\"LC7954\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7955\" class=\"blob-num js-line-number\" data-line-number=\"7955\"></td>\n        <td id=\"LC7955\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">for</span> (j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; j <span class=\"pl-k\">&lt;</span> basic; <span class=\"pl-k\">++</span>j) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7956\" class=\"blob-num js-line-number\" data-line-number=\"7956\"></td>\n        <td id=\"LC7956\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">if</span> (<span class=\"pl-smi\">input</span>.<span class=\"pl-c1\">charCodeAt</span>(j) <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0x80</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7957\" class=\"blob-num js-line-number\" data-line-number=\"7957\"></td>\n        <td id=\"LC7957\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-en\">error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>not-basic<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7958\" class=\"blob-num js-line-number\" data-line-number=\"7958\"></td>\n        <td id=\"LC7958\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7959\" class=\"blob-num js-line-number\" data-line-number=\"7959\"></td>\n        <td id=\"LC7959\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">input</span>.<span class=\"pl-c1\">charCodeAt</span>(j));</td>\n      </tr>\n      <tr>\n        <td id=\"L7960\" class=\"blob-num js-line-number\" data-line-number=\"7960\"></td>\n        <td id=\"LC7960\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7961\" class=\"blob-num js-line-number\" data-line-number=\"7961\"></td>\n        <td id=\"LC7961\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7962\" class=\"blob-num js-line-number\" data-line-number=\"7962\"></td>\n        <td id=\"LC7962\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7963\" class=\"blob-num js-line-number\" data-line-number=\"7963\"></td>\n        <td id=\"LC7963\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">for</span> (index <span class=\"pl-k\">=</span> basic <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">?</span> basic <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>; index <span class=\"pl-k\">&lt;</span> inputLength; <span class=\"pl-c\">/* no final expression */</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7964\" class=\"blob-num js-line-number\" data-line-number=\"7964\"></td>\n        <td id=\"LC7964\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7965\" class=\"blob-num js-line-number\" data-line-number=\"7965\"></td>\n        <td id=\"LC7965\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">for</span> (oldi <span class=\"pl-k\">=</span> i, w <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1</span>, k <span class=\"pl-k\">=</span> base; <span class=\"pl-c\">/* no condition */</span>; k <span class=\"pl-k\">+=</span> base) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7966\" class=\"blob-num js-line-number\" data-line-number=\"7966\"></td>\n        <td id=\"LC7966\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7967\" class=\"blob-num js-line-number\" data-line-number=\"7967\"></td>\n        <td id=\"LC7967\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">if</span> (index <span class=\"pl-k\">&gt;=</span> inputLength) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7968\" class=\"blob-num js-line-number\" data-line-number=\"7968\"></td>\n        <td id=\"LC7968\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t<span class=\"pl-en\">error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>invalid-input<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7969\" class=\"blob-num js-line-number\" data-line-number=\"7969\"></td>\n        <td id=\"LC7969\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7970\" class=\"blob-num js-line-number\" data-line-number=\"7970\"></td>\n        <td id=\"LC7970\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7971\" class=\"blob-num js-line-number\" data-line-number=\"7971\"></td>\n        <td id=\"LC7971\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\tdigit <span class=\"pl-k\">=</span> <span class=\"pl-en\">basicToDigit</span>(<span class=\"pl-smi\">input</span>.<span class=\"pl-c1\">charCodeAt</span>(index<span class=\"pl-k\">++</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L7972\" class=\"blob-num js-line-number\" data-line-number=\"7972\"></td>\n        <td id=\"LC7972\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7973\" class=\"blob-num js-line-number\" data-line-number=\"7973\"></td>\n        <td id=\"LC7973\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">if</span> (digit <span class=\"pl-k\">&gt;=</span> base <span class=\"pl-k\">||</span> digit <span class=\"pl-k\">&gt;</span> <span class=\"pl-en\">floor</span>((maxInt <span class=\"pl-k\">-</span> i) <span class=\"pl-k\">/</span> w)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7974\" class=\"blob-num js-line-number\" data-line-number=\"7974\"></td>\n        <td id=\"LC7974\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t<span class=\"pl-en\">error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>overflow<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7975\" class=\"blob-num js-line-number\" data-line-number=\"7975\"></td>\n        <td id=\"LC7975\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7976\" class=\"blob-num js-line-number\" data-line-number=\"7976\"></td>\n        <td id=\"LC7976\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7977\" class=\"blob-num js-line-number\" data-line-number=\"7977\"></td>\n        <td id=\"LC7977\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\ti <span class=\"pl-k\">+=</span> digit <span class=\"pl-k\">*</span> w;</td>\n      </tr>\n      <tr>\n        <td id=\"L7978\" class=\"blob-num js-line-number\" data-line-number=\"7978\"></td>\n        <td id=\"LC7978\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\tt <span class=\"pl-k\">=</span> k <span class=\"pl-k\">&lt;=</span> bias <span class=\"pl-k\">?</span> tMin <span class=\"pl-k\">:</span> (k <span class=\"pl-k\">&gt;=</span> bias <span class=\"pl-k\">+</span> tMax <span class=\"pl-k\">?</span> tMax <span class=\"pl-k\">:</span> k <span class=\"pl-k\">-</span> bias);</td>\n      </tr>\n      <tr>\n        <td id=\"L7979\" class=\"blob-num js-line-number\" data-line-number=\"7979\"></td>\n        <td id=\"LC7979\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7980\" class=\"blob-num js-line-number\" data-line-number=\"7980\"></td>\n        <td id=\"LC7980\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">if</span> (digit <span class=\"pl-k\">&lt;</span> t) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7981\" class=\"blob-num js-line-number\" data-line-number=\"7981\"></td>\n        <td id=\"LC7981\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t<span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7982\" class=\"blob-num js-line-number\" data-line-number=\"7982\"></td>\n        <td id=\"LC7982\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7983\" class=\"blob-num js-line-number\" data-line-number=\"7983\"></td>\n        <td id=\"LC7983\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7984\" class=\"blob-num js-line-number\" data-line-number=\"7984\"></td>\n        <td id=\"LC7984\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\tbaseMinusT <span class=\"pl-k\">=</span> base <span class=\"pl-k\">-</span> t;</td>\n      </tr>\n      <tr>\n        <td id=\"L7985\" class=\"blob-num js-line-number\" data-line-number=\"7985\"></td>\n        <td id=\"LC7985\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">if</span> (w <span class=\"pl-k\">&gt;</span> <span class=\"pl-en\">floor</span>(maxInt <span class=\"pl-k\">/</span> baseMinusT)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7986\" class=\"blob-num js-line-number\" data-line-number=\"7986\"></td>\n        <td id=\"LC7986\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t<span class=\"pl-en\">error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>overflow<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7987\" class=\"blob-num js-line-number\" data-line-number=\"7987\"></td>\n        <td id=\"LC7987\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7988\" class=\"blob-num js-line-number\" data-line-number=\"7988\"></td>\n        <td id=\"LC7988\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7989\" class=\"blob-num js-line-number\" data-line-number=\"7989\"></td>\n        <td id=\"LC7989\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\tw <span class=\"pl-k\">*=</span> baseMinusT;</td>\n      </tr>\n      <tr>\n        <td id=\"L7990\" class=\"blob-num js-line-number\" data-line-number=\"7990\"></td>\n        <td id=\"LC7990\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7991\" class=\"blob-num js-line-number\" data-line-number=\"7991\"></td>\n        <td id=\"LC7991\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7992\" class=\"blob-num js-line-number\" data-line-number=\"7992\"></td>\n        <td id=\"LC7992\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7993\" class=\"blob-num js-line-number\" data-line-number=\"7993\"></td>\n        <td id=\"LC7993\" class=\"blob-code blob-code-inner js-file-line\">\t\t\tout <span class=\"pl-k\">=</span> <span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L7994\" class=\"blob-num js-line-number\" data-line-number=\"7994\"></td>\n        <td id=\"LC7994\" class=\"blob-code blob-code-inner js-file-line\">\t\t\tbias <span class=\"pl-k\">=</span> <span class=\"pl-en\">adapt</span>(i <span class=\"pl-k\">-</span> oldi, out, oldi <span class=\"pl-k\">==</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7995\" class=\"blob-num js-line-number\" data-line-number=\"7995\"></td>\n        <td id=\"LC7995\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L7996\" class=\"blob-num js-line-number\" data-line-number=\"7996\"></td>\n        <td id=\"LC7996\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">if</span> (<span class=\"pl-en\">floor</span>(i <span class=\"pl-k\">/</span> out) <span class=\"pl-k\">&gt;</span> maxInt <span class=\"pl-k\">-</span> n) {</td>\n      </tr>\n      <tr>\n        <td id=\"L7997\" class=\"blob-num js-line-number\" data-line-number=\"7997\"></td>\n        <td id=\"LC7997\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-en\">error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>overflow<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L7998\" class=\"blob-num js-line-number\" data-line-number=\"7998\"></td>\n        <td id=\"LC7998\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L7999\" class=\"blob-num js-line-number\" data-line-number=\"7999\"></td>\n        <td id=\"LC7999\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8000\" class=\"blob-num js-line-number\" data-line-number=\"8000\"></td>\n        <td id=\"LC8000\" class=\"blob-code blob-code-inner js-file-line\">\t\t\tn <span class=\"pl-k\">+=</span> <span class=\"pl-en\">floor</span>(i <span class=\"pl-k\">/</span> out);</td>\n      </tr>\n      <tr>\n        <td id=\"L8001\" class=\"blob-num js-line-number\" data-line-number=\"8001\"></td>\n        <td id=\"LC8001\" class=\"blob-code blob-code-inner js-file-line\">\t\t\ti <span class=\"pl-k\">%=</span> out;</td>\n      </tr>\n      <tr>\n        <td id=\"L8002\" class=\"blob-num js-line-number\" data-line-number=\"8002\"></td>\n        <td id=\"LC8002\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8003\" class=\"blob-num js-line-number\" data-line-number=\"8003\"></td>\n        <td id=\"LC8003\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">splice</span>(i<span class=\"pl-k\">++</span>, <span class=\"pl-c1\">0</span>, n);</td>\n      </tr>\n      <tr>\n        <td id=\"L8004\" class=\"blob-num js-line-number\" data-line-number=\"8004\"></td>\n        <td id=\"LC8004\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8005\" class=\"blob-num js-line-number\" data-line-number=\"8005\"></td>\n        <td id=\"LC8005\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8006\" class=\"blob-num js-line-number\" data-line-number=\"8006\"></td>\n        <td id=\"LC8006\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8007\" class=\"blob-num js-line-number\" data-line-number=\"8007\"></td>\n        <td id=\"LC8007\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> <span class=\"pl-en\">ucs2encode</span>(output);</td>\n      </tr>\n      <tr>\n        <td id=\"L8008\" class=\"blob-num js-line-number\" data-line-number=\"8008\"></td>\n        <td id=\"LC8008\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8009\" class=\"blob-num js-line-number\" data-line-number=\"8009\"></td>\n        <td id=\"LC8009\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8010\" class=\"blob-num js-line-number\" data-line-number=\"8010\"></td>\n        <td id=\"LC8010\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8011\" class=\"blob-num js-line-number\" data-line-number=\"8011\"></td>\n        <td id=\"LC8011\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">encode</span>(<span class=\"pl-smi\">input</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8012\" class=\"blob-num js-line-number\" data-line-number=\"8012\"></td>\n        <td id=\"LC8012\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">var</span> n,</td>\n      </tr>\n      <tr>\n        <td id=\"L8013\" class=\"blob-num js-line-number\" data-line-number=\"8013\"></td>\n        <td id=\"LC8013\" class=\"blob-code blob-code-inner js-file-line\">\t\t    delta,</td>\n      </tr>\n      <tr>\n        <td id=\"L8014\" class=\"blob-num js-line-number\" data-line-number=\"8014\"></td>\n        <td id=\"LC8014\" class=\"blob-code blob-code-inner js-file-line\">\t\t    handledCPCount,</td>\n      </tr>\n      <tr>\n        <td id=\"L8015\" class=\"blob-num js-line-number\" data-line-number=\"8015\"></td>\n        <td id=\"LC8015\" class=\"blob-code blob-code-inner js-file-line\">\t\t    basicLength,</td>\n      </tr>\n      <tr>\n        <td id=\"L8016\" class=\"blob-num js-line-number\" data-line-number=\"8016\"></td>\n        <td id=\"LC8016\" class=\"blob-code blob-code-inner js-file-line\">\t\t    bias,</td>\n      </tr>\n      <tr>\n        <td id=\"L8017\" class=\"blob-num js-line-number\" data-line-number=\"8017\"></td>\n        <td id=\"LC8017\" class=\"blob-code blob-code-inner js-file-line\">\t\t    j,</td>\n      </tr>\n      <tr>\n        <td id=\"L8018\" class=\"blob-num js-line-number\" data-line-number=\"8018\"></td>\n        <td id=\"LC8018\" class=\"blob-code blob-code-inner js-file-line\">\t\t    m,</td>\n      </tr>\n      <tr>\n        <td id=\"L8019\" class=\"blob-num js-line-number\" data-line-number=\"8019\"></td>\n        <td id=\"LC8019\" class=\"blob-code blob-code-inner js-file-line\">\t\t    q,</td>\n      </tr>\n      <tr>\n        <td id=\"L8020\" class=\"blob-num js-line-number\" data-line-number=\"8020\"></td>\n        <td id=\"LC8020\" class=\"blob-code blob-code-inner js-file-line\">\t\t    k,</td>\n      </tr>\n      <tr>\n        <td id=\"L8021\" class=\"blob-num js-line-number\" data-line-number=\"8021\"></td>\n        <td id=\"LC8021\" class=\"blob-code blob-code-inner js-file-line\">\t\t    t,</td>\n      </tr>\n      <tr>\n        <td id=\"L8022\" class=\"blob-num js-line-number\" data-line-number=\"8022\"></td>\n        <td id=\"LC8022\" class=\"blob-code blob-code-inner js-file-line\">\t\t    currentValue,</td>\n      </tr>\n      <tr>\n        <td id=\"L8023\" class=\"blob-num js-line-number\" data-line-number=\"8023\"></td>\n        <td id=\"LC8023\" class=\"blob-code blob-code-inner js-file-line\">\t\t    output <span class=\"pl-k\">=</span> [],</td>\n      </tr>\n      <tr>\n        <td id=\"L8024\" class=\"blob-num js-line-number\" data-line-number=\"8024\"></td>\n        <td id=\"LC8024\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8025\" class=\"blob-num js-line-number\" data-line-number=\"8025\"></td>\n        <td id=\"LC8025\" class=\"blob-code blob-code-inner js-file-line\">\t\t    inputLength,</td>\n      </tr>\n      <tr>\n        <td id=\"L8026\" class=\"blob-num js-line-number\" data-line-number=\"8026\"></td>\n        <td id=\"LC8026\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8027\" class=\"blob-num js-line-number\" data-line-number=\"8027\"></td>\n        <td id=\"LC8027\" class=\"blob-code blob-code-inner js-file-line\">\t\t    handledCPCountPlusOne,</td>\n      </tr>\n      <tr>\n        <td id=\"L8028\" class=\"blob-num js-line-number\" data-line-number=\"8028\"></td>\n        <td id=\"LC8028\" class=\"blob-code blob-code-inner js-file-line\">\t\t    baseMinusT,</td>\n      </tr>\n      <tr>\n        <td id=\"L8029\" class=\"blob-num js-line-number\" data-line-number=\"8029\"></td>\n        <td id=\"LC8029\" class=\"blob-code blob-code-inner js-file-line\">\t\t    qMinusT;</td>\n      </tr>\n      <tr>\n        <td id=\"L8030\" class=\"blob-num js-line-number\" data-line-number=\"8030\"></td>\n        <td id=\"LC8030\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8031\" class=\"blob-num js-line-number\" data-line-number=\"8031\"></td>\n        <td id=\"LC8031\" class=\"blob-code blob-code-inner js-file-line\">\t\tinput <span class=\"pl-k\">=</span> <span class=\"pl-en\">ucs2decode</span>(input);</td>\n      </tr>\n      <tr>\n        <td id=\"L8032\" class=\"blob-num js-line-number\" data-line-number=\"8032\"></td>\n        <td id=\"LC8032\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8033\" class=\"blob-num js-line-number\" data-line-number=\"8033\"></td>\n        <td id=\"LC8033\" class=\"blob-code blob-code-inner js-file-line\">\t\tinputLength <span class=\"pl-k\">=</span> <span class=\"pl-smi\">input</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8034\" class=\"blob-num js-line-number\" data-line-number=\"8034\"></td>\n        <td id=\"LC8034\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8035\" class=\"blob-num js-line-number\" data-line-number=\"8035\"></td>\n        <td id=\"LC8035\" class=\"blob-code blob-code-inner js-file-line\">\t\tn <span class=\"pl-k\">=</span> initialN;</td>\n      </tr>\n      <tr>\n        <td id=\"L8036\" class=\"blob-num js-line-number\" data-line-number=\"8036\"></td>\n        <td id=\"LC8036\" class=\"blob-code blob-code-inner js-file-line\">\t\tdelta <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8037\" class=\"blob-num js-line-number\" data-line-number=\"8037\"></td>\n        <td id=\"LC8037\" class=\"blob-code blob-code-inner js-file-line\">\t\tbias <span class=\"pl-k\">=</span> initialBias;</td>\n      </tr>\n      <tr>\n        <td id=\"L8038\" class=\"blob-num js-line-number\" data-line-number=\"8038\"></td>\n        <td id=\"LC8038\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8039\" class=\"blob-num js-line-number\" data-line-number=\"8039\"></td>\n        <td id=\"LC8039\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">for</span> (j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; j <span class=\"pl-k\">&lt;</span> inputLength; <span class=\"pl-k\">++</span>j) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8040\" class=\"blob-num js-line-number\" data-line-number=\"8040\"></td>\n        <td id=\"LC8040\" class=\"blob-code blob-code-inner js-file-line\">\t\t\tcurrentValue <span class=\"pl-k\">=</span> input[j];</td>\n      </tr>\n      <tr>\n        <td id=\"L8041\" class=\"blob-num js-line-number\" data-line-number=\"8041\"></td>\n        <td id=\"LC8041\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">if</span> (currentValue <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0x80</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8042\" class=\"blob-num js-line-number\" data-line-number=\"8042\"></td>\n        <td id=\"LC8042\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-en\">stringFromCharCode</span>(currentValue));</td>\n      </tr>\n      <tr>\n        <td id=\"L8043\" class=\"blob-num js-line-number\" data-line-number=\"8043\"></td>\n        <td id=\"LC8043\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8044\" class=\"blob-num js-line-number\" data-line-number=\"8044\"></td>\n        <td id=\"LC8044\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8045\" class=\"blob-num js-line-number\" data-line-number=\"8045\"></td>\n        <td id=\"LC8045\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8046\" class=\"blob-num js-line-number\" data-line-number=\"8046\"></td>\n        <td id=\"LC8046\" class=\"blob-code blob-code-inner js-file-line\">\t\thandledCPCount <span class=\"pl-k\">=</span> basicLength <span class=\"pl-k\">=</span> <span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8047\" class=\"blob-num js-line-number\" data-line-number=\"8047\"></td>\n        <td id=\"LC8047\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8048\" class=\"blob-num js-line-number\" data-line-number=\"8048\"></td>\n        <td id=\"LC8048\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8049\" class=\"blob-num js-line-number\" data-line-number=\"8049\"></td>\n        <td id=\"LC8049\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (basicLength) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8050\" class=\"blob-num js-line-number\" data-line-number=\"8050\"></td>\n        <td id=\"LC8050\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">push</span>(delimiter);</td>\n      </tr>\n      <tr>\n        <td id=\"L8051\" class=\"blob-num js-line-number\" data-line-number=\"8051\"></td>\n        <td id=\"LC8051\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8052\" class=\"blob-num js-line-number\" data-line-number=\"8052\"></td>\n        <td id=\"LC8052\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8053\" class=\"blob-num js-line-number\" data-line-number=\"8053\"></td>\n        <td id=\"LC8053\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">while</span> (handledCPCount <span class=\"pl-k\">&lt;</span> inputLength) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8054\" class=\"blob-num js-line-number\" data-line-number=\"8054\"></td>\n        <td id=\"LC8054\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8055\" class=\"blob-num js-line-number\" data-line-number=\"8055\"></td>\n        <td id=\"LC8055\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">for</span> (m <span class=\"pl-k\">=</span> maxInt, j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; j <span class=\"pl-k\">&lt;</span> inputLength; <span class=\"pl-k\">++</span>j) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8056\" class=\"blob-num js-line-number\" data-line-number=\"8056\"></td>\n        <td id=\"LC8056\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\tcurrentValue <span class=\"pl-k\">=</span> input[j];</td>\n      </tr>\n      <tr>\n        <td id=\"L8057\" class=\"blob-num js-line-number\" data-line-number=\"8057\"></td>\n        <td id=\"LC8057\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">if</span> (currentValue <span class=\"pl-k\">&gt;=</span> n <span class=\"pl-k\">&amp;&amp;</span> currentValue <span class=\"pl-k\">&lt;</span> m) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8058\" class=\"blob-num js-line-number\" data-line-number=\"8058\"></td>\n        <td id=\"LC8058\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\tm <span class=\"pl-k\">=</span> currentValue;</td>\n      </tr>\n      <tr>\n        <td id=\"L8059\" class=\"blob-num js-line-number\" data-line-number=\"8059\"></td>\n        <td id=\"LC8059\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8060\" class=\"blob-num js-line-number\" data-line-number=\"8060\"></td>\n        <td id=\"LC8060\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8061\" class=\"blob-num js-line-number\" data-line-number=\"8061\"></td>\n        <td id=\"LC8061\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8062\" class=\"blob-num js-line-number\" data-line-number=\"8062\"></td>\n        <td id=\"LC8062\" class=\"blob-code blob-code-inner js-file-line\">\t\t\thandledCPCountPlusOne <span class=\"pl-k\">=</span> handledCPCount <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8063\" class=\"blob-num js-line-number\" data-line-number=\"8063\"></td>\n        <td id=\"LC8063\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">if</span> (m <span class=\"pl-k\">-</span> n <span class=\"pl-k\">&gt;</span> <span class=\"pl-en\">floor</span>((maxInt <span class=\"pl-k\">-</span> delta) <span class=\"pl-k\">/</span> handledCPCountPlusOne)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8064\" class=\"blob-num js-line-number\" data-line-number=\"8064\"></td>\n        <td id=\"LC8064\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-en\">error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>overflow<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8065\" class=\"blob-num js-line-number\" data-line-number=\"8065\"></td>\n        <td id=\"LC8065\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8066\" class=\"blob-num js-line-number\" data-line-number=\"8066\"></td>\n        <td id=\"LC8066\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8067\" class=\"blob-num js-line-number\" data-line-number=\"8067\"></td>\n        <td id=\"LC8067\" class=\"blob-code blob-code-inner js-file-line\">\t\t\tdelta <span class=\"pl-k\">+=</span> (m <span class=\"pl-k\">-</span> n) <span class=\"pl-k\">*</span> handledCPCountPlusOne;</td>\n      </tr>\n      <tr>\n        <td id=\"L8068\" class=\"blob-num js-line-number\" data-line-number=\"8068\"></td>\n        <td id=\"LC8068\" class=\"blob-code blob-code-inner js-file-line\">\t\t\tn <span class=\"pl-k\">=</span> m;</td>\n      </tr>\n      <tr>\n        <td id=\"L8069\" class=\"blob-num js-line-number\" data-line-number=\"8069\"></td>\n        <td id=\"LC8069\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8070\" class=\"blob-num js-line-number\" data-line-number=\"8070\"></td>\n        <td id=\"LC8070\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">for</span> (j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; j <span class=\"pl-k\">&lt;</span> inputLength; <span class=\"pl-k\">++</span>j) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8071\" class=\"blob-num js-line-number\" data-line-number=\"8071\"></td>\n        <td id=\"LC8071\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\tcurrentValue <span class=\"pl-k\">=</span> input[j];</td>\n      </tr>\n      <tr>\n        <td id=\"L8072\" class=\"blob-num js-line-number\" data-line-number=\"8072\"></td>\n        <td id=\"LC8072\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8073\" class=\"blob-num js-line-number\" data-line-number=\"8073\"></td>\n        <td id=\"LC8073\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">if</span> (currentValue <span class=\"pl-k\">&lt;</span> n <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">++</span>delta <span class=\"pl-k\">&gt;</span> maxInt) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8074\" class=\"blob-num js-line-number\" data-line-number=\"8074\"></td>\n        <td id=\"LC8074\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t<span class=\"pl-en\">error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>overflow<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8075\" class=\"blob-num js-line-number\" data-line-number=\"8075\"></td>\n        <td id=\"LC8075\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8076\" class=\"blob-num js-line-number\" data-line-number=\"8076\"></td>\n        <td id=\"LC8076\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8077\" class=\"blob-num js-line-number\" data-line-number=\"8077\"></td>\n        <td id=\"LC8077\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">if</span> (currentValue <span class=\"pl-k\">==</span> n) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8078\" class=\"blob-num js-line-number\" data-line-number=\"8078\"></td>\n        <td id=\"LC8078\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t<span class=\"pl-k\">for</span> (q <span class=\"pl-k\">=</span> delta, k <span class=\"pl-k\">=</span> base; <span class=\"pl-c\">/* no condition */</span>; k <span class=\"pl-k\">+=</span> base) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8079\" class=\"blob-num js-line-number\" data-line-number=\"8079\"></td>\n        <td id=\"LC8079\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t\tt <span class=\"pl-k\">=</span> k <span class=\"pl-k\">&lt;=</span> bias <span class=\"pl-k\">?</span> tMin <span class=\"pl-k\">:</span> (k <span class=\"pl-k\">&gt;=</span> bias <span class=\"pl-k\">+</span> tMax <span class=\"pl-k\">?</span> tMax <span class=\"pl-k\">:</span> k <span class=\"pl-k\">-</span> bias);</td>\n      </tr>\n      <tr>\n        <td id=\"L8080\" class=\"blob-num js-line-number\" data-line-number=\"8080\"></td>\n        <td id=\"LC8080\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t\t<span class=\"pl-k\">if</span> (q <span class=\"pl-k\">&lt;</span> t) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8081\" class=\"blob-num js-line-number\" data-line-number=\"8081\"></td>\n        <td id=\"LC8081\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t\t\t<span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8082\" class=\"blob-num js-line-number\" data-line-number=\"8082\"></td>\n        <td id=\"LC8082\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8083\" class=\"blob-num js-line-number\" data-line-number=\"8083\"></td>\n        <td id=\"LC8083\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t\tqMinusT <span class=\"pl-k\">=</span> q <span class=\"pl-k\">-</span> t;</td>\n      </tr>\n      <tr>\n        <td id=\"L8084\" class=\"blob-num js-line-number\" data-line-number=\"8084\"></td>\n        <td id=\"LC8084\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t\tbaseMinusT <span class=\"pl-k\">=</span> base <span class=\"pl-k\">-</span> t;</td>\n      </tr>\n      <tr>\n        <td id=\"L8085\" class=\"blob-num js-line-number\" data-line-number=\"8085\"></td>\n        <td id=\"LC8085\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t\t<span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">push</span>(</td>\n      </tr>\n      <tr>\n        <td id=\"L8086\" class=\"blob-num js-line-number\" data-line-number=\"8086\"></td>\n        <td id=\"LC8086\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t\t\t<span class=\"pl-en\">stringFromCharCode</span>(<span class=\"pl-en\">digitToBasic</span>(t <span class=\"pl-k\">+</span> qMinusT <span class=\"pl-k\">%</span> baseMinusT, <span class=\"pl-c1\">0</span>))</td>\n      </tr>\n      <tr>\n        <td id=\"L8087\" class=\"blob-num js-line-number\" data-line-number=\"8087\"></td>\n        <td id=\"LC8087\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t\t);</td>\n      </tr>\n      <tr>\n        <td id=\"L8088\" class=\"blob-num js-line-number\" data-line-number=\"8088\"></td>\n        <td id=\"LC8088\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t\tq <span class=\"pl-k\">=</span> <span class=\"pl-en\">floor</span>(qMinusT <span class=\"pl-k\">/</span> baseMinusT);</td>\n      </tr>\n      <tr>\n        <td id=\"L8089\" class=\"blob-num js-line-number\" data-line-number=\"8089\"></td>\n        <td id=\"LC8089\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8090\" class=\"blob-num js-line-number\" data-line-number=\"8090\"></td>\n        <td id=\"LC8090\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8091\" class=\"blob-num js-line-number\" data-line-number=\"8091\"></td>\n        <td id=\"LC8091\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t<span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-en\">stringFromCharCode</span>(<span class=\"pl-en\">digitToBasic</span>(q, <span class=\"pl-c1\">0</span>)));</td>\n      </tr>\n      <tr>\n        <td id=\"L8092\" class=\"blob-num js-line-number\" data-line-number=\"8092\"></td>\n        <td id=\"LC8092\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\tbias <span class=\"pl-k\">=</span> <span class=\"pl-en\">adapt</span>(delta, handledCPCountPlusOne, handledCPCount <span class=\"pl-k\">==</span> basicLength);</td>\n      </tr>\n      <tr>\n        <td id=\"L8093\" class=\"blob-num js-line-number\" data-line-number=\"8093\"></td>\n        <td id=\"LC8093\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\tdelta <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8094\" class=\"blob-num js-line-number\" data-line-number=\"8094\"></td>\n        <td id=\"LC8094\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t\t<span class=\"pl-k\">++</span>handledCPCount;</td>\n      </tr>\n      <tr>\n        <td id=\"L8095\" class=\"blob-num js-line-number\" data-line-number=\"8095\"></td>\n        <td id=\"LC8095\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8096\" class=\"blob-num js-line-number\" data-line-number=\"8096\"></td>\n        <td id=\"LC8096\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8097\" class=\"blob-num js-line-number\" data-line-number=\"8097\"></td>\n        <td id=\"LC8097\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8098\" class=\"blob-num js-line-number\" data-line-number=\"8098\"></td>\n        <td id=\"LC8098\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">++</span>delta;</td>\n      </tr>\n      <tr>\n        <td id=\"L8099\" class=\"blob-num js-line-number\" data-line-number=\"8099\"></td>\n        <td id=\"LC8099\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">++</span>n;</td>\n      </tr>\n      <tr>\n        <td id=\"L8100\" class=\"blob-num js-line-number\" data-line-number=\"8100\"></td>\n        <td id=\"LC8100\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8101\" class=\"blob-num js-line-number\" data-line-number=\"8101\"></td>\n        <td id=\"LC8101\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8102\" class=\"blob-num js-line-number\" data-line-number=\"8102\"></td>\n        <td id=\"LC8102\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> <span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8103\" class=\"blob-num js-line-number\" data-line-number=\"8103\"></td>\n        <td id=\"LC8103\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8104\" class=\"blob-num js-line-number\" data-line-number=\"8104\"></td>\n        <td id=\"LC8104\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8105\" class=\"blob-num js-line-number\" data-line-number=\"8105\"></td>\n        <td id=\"LC8105\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8106\" class=\"blob-num js-line-number\" data-line-number=\"8106\"></td>\n        <td id=\"LC8106\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">toUnicode</span>(<span class=\"pl-smi\">domain</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8107\" class=\"blob-num js-line-number\" data-line-number=\"8107\"></td>\n        <td id=\"LC8107\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> <span class=\"pl-en\">mapDomain</span>(domain, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8108\" class=\"blob-num js-line-number\" data-line-number=\"8108\"></td>\n        <td id=\"LC8108\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> <span class=\"pl-smi\">regexPunycode</span>.<span class=\"pl-c1\">test</span>(string)</td>\n      </tr>\n      <tr>\n        <td id=\"L8109\" class=\"blob-num js-line-number\" data-line-number=\"8109\"></td>\n        <td id=\"LC8109\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">?</span> <span class=\"pl-en\">decode</span>(<span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-c1\">4</span>).<span class=\"pl-c1\">toLowerCase</span>())</td>\n      </tr>\n      <tr>\n        <td id=\"L8110\" class=\"blob-num js-line-number\" data-line-number=\"8110\"></td>\n        <td id=\"LC8110\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">:</span> string;</td>\n      </tr>\n      <tr>\n        <td id=\"L8111\" class=\"blob-num js-line-number\" data-line-number=\"8111\"></td>\n        <td id=\"LC8111\" class=\"blob-code blob-code-inner js-file-line\">\t\t});</td>\n      </tr>\n      <tr>\n        <td id=\"L8112\" class=\"blob-num js-line-number\" data-line-number=\"8112\"></td>\n        <td id=\"LC8112\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8113\" class=\"blob-num js-line-number\" data-line-number=\"8113\"></td>\n        <td id=\"LC8113\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8114\" class=\"blob-num js-line-number\" data-line-number=\"8114\"></td>\n        <td id=\"LC8114\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8115\" class=\"blob-num js-line-number\" data-line-number=\"8115\"></td>\n        <td id=\"LC8115\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">function</span> <span class=\"pl-en\">toASCII</span>(<span class=\"pl-smi\">domain</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8116\" class=\"blob-num js-line-number\" data-line-number=\"8116\"></td>\n        <td id=\"LC8116\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">return</span> <span class=\"pl-en\">mapDomain</span>(domain, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8117\" class=\"blob-num js-line-number\" data-line-number=\"8117\"></td>\n        <td id=\"LC8117\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> <span class=\"pl-smi\">regexNonASCII</span>.<span class=\"pl-c1\">test</span>(string)</td>\n      </tr>\n      <tr>\n        <td id=\"L8118\" class=\"blob-num js-line-number\" data-line-number=\"8118\"></td>\n        <td id=\"LC8118\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>xn--<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-en\">encode</span>(string)</td>\n      </tr>\n      <tr>\n        <td id=\"L8119\" class=\"blob-num js-line-number\" data-line-number=\"8119\"></td>\n        <td id=\"LC8119\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-k\">:</span> string;</td>\n      </tr>\n      <tr>\n        <td id=\"L8120\" class=\"blob-num js-line-number\" data-line-number=\"8120\"></td>\n        <td id=\"LC8120\" class=\"blob-code blob-code-inner js-file-line\">\t\t});</td>\n      </tr>\n      <tr>\n        <td id=\"L8121\" class=\"blob-num js-line-number\" data-line-number=\"8121\"></td>\n        <td id=\"LC8121\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8122\" class=\"blob-num js-line-number\" data-line-number=\"8122\"></td>\n        <td id=\"LC8122\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8123\" class=\"blob-num js-line-number\" data-line-number=\"8123\"></td>\n        <td id=\"LC8123\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8124\" class=\"blob-num js-line-number\" data-line-number=\"8124\"></td>\n        <td id=\"LC8124\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8125\" class=\"blob-num js-line-number\" data-line-number=\"8125\"></td>\n        <td id=\"LC8125\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8126\" class=\"blob-num js-line-number\" data-line-number=\"8126\"></td>\n        <td id=\"LC8126\" class=\"blob-code blob-code-inner js-file-line\">\tpunycode <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8127\" class=\"blob-num js-line-number\" data-line-number=\"8127\"></td>\n        <td id=\"LC8127\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8128\" class=\"blob-num js-line-number\" data-line-number=\"8128\"></td>\n        <td id=\"LC8128\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>version<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>1.2.4<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8129\" class=\"blob-num js-line-number\" data-line-number=\"8129\"></td>\n        <td id=\"LC8129\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8130\" class=\"blob-num js-line-number\" data-line-number=\"8130\"></td>\n        <td id=\"LC8130\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ucs2<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8131\" class=\"blob-num js-line-number\" data-line-number=\"8131\"></td>\n        <td id=\"LC8131\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>decode<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> ucs2decode,</td>\n      </tr>\n      <tr>\n        <td id=\"L8132\" class=\"blob-num js-line-number\" data-line-number=\"8132\"></td>\n        <td id=\"LC8132\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>encode<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> ucs2encode</td>\n      </tr>\n      <tr>\n        <td id=\"L8133\" class=\"blob-num js-line-number\" data-line-number=\"8133\"></td>\n        <td id=\"LC8133\" class=\"blob-code blob-code-inner js-file-line\">\t\t},</td>\n      </tr>\n      <tr>\n        <td id=\"L8134\" class=\"blob-num js-line-number\" data-line-number=\"8134\"></td>\n        <td id=\"LC8134\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>decode<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> decode,</td>\n      </tr>\n      <tr>\n        <td id=\"L8135\" class=\"blob-num js-line-number\" data-line-number=\"8135\"></td>\n        <td id=\"LC8135\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>encode<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> encode,</td>\n      </tr>\n      <tr>\n        <td id=\"L8136\" class=\"blob-num js-line-number\" data-line-number=\"8136\"></td>\n        <td id=\"LC8136\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>toASCII<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> toASCII,</td>\n      </tr>\n      <tr>\n        <td id=\"L8137\" class=\"blob-num js-line-number\" data-line-number=\"8137\"></td>\n        <td id=\"LC8137\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>toUnicode<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> toUnicode</td>\n      </tr>\n      <tr>\n        <td id=\"L8138\" class=\"blob-num js-line-number\" data-line-number=\"8138\"></td>\n        <td id=\"LC8138\" class=\"blob-code blob-code-inner js-file-line\">\t};</td>\n      </tr>\n      <tr>\n        <td id=\"L8139\" class=\"blob-num js-line-number\" data-line-number=\"8139\"></td>\n        <td id=\"LC8139\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8140\" class=\"blob-num js-line-number\" data-line-number=\"8140\"></td>\n        <td id=\"LC8140\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8141\" class=\"blob-num js-line-number\" data-line-number=\"8141\"></td>\n        <td id=\"LC8141\" class=\"blob-code blob-code-inner js-file-line\">\t<span class=\"pl-k\">if</span> (</td>\n      </tr>\n      <tr>\n        <td id=\"L8142\" class=\"blob-num js-line-number\" data-line-number=\"8142\"></td>\n        <td id=\"LC8142\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">typeof</span> define <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8143\" class=\"blob-num js-line-number\" data-line-number=\"8143\"></td>\n        <td id=\"LC8143\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">define</span>.<span class=\"pl-smi\">amd</span> <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8144\" class=\"blob-num js-line-number\" data-line-number=\"8144\"></td>\n        <td id=\"LC8144\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-smi\">define</span>.<span class=\"pl-smi\">amd</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8145\" class=\"blob-num js-line-number\" data-line-number=\"8145\"></td>\n        <td id=\"LC8145\" class=\"blob-code blob-code-inner js-file-line\">\t) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8146\" class=\"blob-num js-line-number\" data-line-number=\"8146\"></td>\n        <td id=\"LC8146\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-en\">define</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>punycode<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L8147\" class=\"blob-num js-line-number\" data-line-number=\"8147\"></td>\n        <td id=\"LC8147\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">return</span> punycode;</td>\n      </tr>\n      <tr>\n        <td id=\"L8148\" class=\"blob-num js-line-number\" data-line-number=\"8148\"></td>\n        <td id=\"LC8148\" class=\"blob-code blob-code-inner js-file-line\">\t\t});</td>\n      </tr>\n      <tr>\n        <td id=\"L8149\" class=\"blob-num js-line-number\" data-line-number=\"8149\"></td>\n        <td id=\"LC8149\" class=\"blob-code blob-code-inner js-file-line\">\t} <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (freeExports <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">freeExports</span>.<span class=\"pl-c1\">nodeType</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8150\" class=\"blob-num js-line-number\" data-line-number=\"8150\"></td>\n        <td id=\"LC8150\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-k\">if</span> (freeModule) { <span class=\"pl-c\">// in Node.js or RingoJS v0.8.0+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8151\" class=\"blob-num js-line-number\" data-line-number=\"8151\"></td>\n        <td id=\"LC8151\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-smi\">freeModule</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> punycode;</td>\n      </tr>\n      <tr>\n        <td id=\"L8152\" class=\"blob-num js-line-number\" data-line-number=\"8152\"></td>\n        <td id=\"LC8152\" class=\"blob-code blob-code-inner js-file-line\">\t\t} <span class=\"pl-k\">else</span> { <span class=\"pl-c\">// in Narwhal or RingoJS v0.7.0-</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8153\" class=\"blob-num js-line-number\" data-line-number=\"8153\"></td>\n        <td id=\"LC8153\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t<span class=\"pl-k\">for</span> (key <span class=\"pl-k\">in</span> punycode) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8154\" class=\"blob-num js-line-number\" data-line-number=\"8154\"></td>\n        <td id=\"LC8154\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t\t<span class=\"pl-smi\">punycode</span>.<span class=\"pl-en\">hasOwnProperty</span>(key) <span class=\"pl-k\">&amp;&amp;</span> (freeExports[key] <span class=\"pl-k\">=</span> punycode[key]);</td>\n      </tr>\n      <tr>\n        <td id=\"L8155\" class=\"blob-num js-line-number\" data-line-number=\"8155\"></td>\n        <td id=\"LC8155\" class=\"blob-code blob-code-inner js-file-line\">\t\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8156\" class=\"blob-num js-line-number\" data-line-number=\"8156\"></td>\n        <td id=\"LC8156\" class=\"blob-code blob-code-inner js-file-line\">\t\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8157\" class=\"blob-num js-line-number\" data-line-number=\"8157\"></td>\n        <td id=\"LC8157\" class=\"blob-code blob-code-inner js-file-line\">\t} <span class=\"pl-k\">else</span> { <span class=\"pl-c\">// in Rhino or a web browser</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8158\" class=\"blob-num js-line-number\" data-line-number=\"8158\"></td>\n        <td id=\"LC8158\" class=\"blob-code blob-code-inner js-file-line\">\t\t<span class=\"pl-smi\">root</span>.<span class=\"pl-smi\">punycode</span> <span class=\"pl-k\">=</span> punycode;</td>\n      </tr>\n      <tr>\n        <td id=\"L8159\" class=\"blob-num js-line-number\" data-line-number=\"8159\"></td>\n        <td id=\"LC8159\" class=\"blob-code blob-code-inner js-file-line\">\t}</td>\n      </tr>\n      <tr>\n        <td id=\"L8160\" class=\"blob-num js-line-number\" data-line-number=\"8160\"></td>\n        <td id=\"LC8160\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8161\" class=\"blob-num js-line-number\" data-line-number=\"8161\"></td>\n        <td id=\"LC8161\" class=\"blob-code blob-code-inner js-file-line\">}(<span class=\"pl-v\">this</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L8162\" class=\"blob-num js-line-number\" data-line-number=\"8162\"></td>\n        <td id=\"LC8162\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8163\" class=\"blob-num js-line-number\" data-line-number=\"8163\"></td>\n        <td id=\"LC8163\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>,<span class=\"pl-k\">typeof</span> self <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> self <span class=\"pl-k\">:</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">:</span> {})</td>\n      </tr>\n      <tr>\n        <td id=\"L8164\" class=\"blob-num js-line-number\" data-line-number=\"8164\"></td>\n        <td id=\"LC8164\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">60</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L8165\" class=\"blob-num js-line-number\" data-line-number=\"8165\"></td>\n        <td id=\"LC8165\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8166\" class=\"blob-num js-line-number\" data-line-number=\"8166\"></td>\n        <td id=\"LC8166\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>use strict<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8167\" class=\"blob-num js-line-number\" data-line-number=\"8167\"></td>\n        <td id=\"LC8167\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8168\" class=\"blob-num js-line-number\" data-line-number=\"8168\"></td>\n        <td id=\"LC8168\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">hasOwnProperty</span>(<span class=\"pl-smi\">obj</span>, <span class=\"pl-smi\">prop</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8169\" class=\"blob-num js-line-number\" data-line-number=\"8169\"></td>\n        <td id=\"LC8169\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(obj, prop);</td>\n      </tr>\n      <tr>\n        <td id=\"L8170\" class=\"blob-num js-line-number\" data-line-number=\"8170\"></td>\n        <td id=\"LC8170\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8171\" class=\"blob-num js-line-number\" data-line-number=\"8171\"></td>\n        <td id=\"LC8171\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8172\" class=\"blob-num js-line-number\" data-line-number=\"8172\"></td>\n        <td id=\"LC8172\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-en\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">qs</span>, <span class=\"pl-smi\">sep</span>, <span class=\"pl-smi\">eq</span>, <span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8173\" class=\"blob-num js-line-number\" data-line-number=\"8173\"></td>\n        <td id=\"LC8173\" class=\"blob-code blob-code-inner js-file-line\">  sep <span class=\"pl-k\">=</span> sep <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8174\" class=\"blob-num js-line-number\" data-line-number=\"8174\"></td>\n        <td id=\"LC8174\" class=\"blob-code blob-code-inner js-file-line\">  eq <span class=\"pl-k\">=</span> eq <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8175\" class=\"blob-num js-line-number\" data-line-number=\"8175\"></td>\n        <td id=\"LC8175\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> obj <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L8176\" class=\"blob-num js-line-number\" data-line-number=\"8176\"></td>\n        <td id=\"LC8176\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8177\" class=\"blob-num js-line-number\" data-line-number=\"8177\"></td>\n        <td id=\"LC8177\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> qs <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">qs</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8178\" class=\"blob-num js-line-number\" data-line-number=\"8178\"></td>\n        <td id=\"LC8178\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> obj;</td>\n      </tr>\n      <tr>\n        <td id=\"L8179\" class=\"blob-num js-line-number\" data-line-number=\"8179\"></td>\n        <td id=\"LC8179\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8180\" class=\"blob-num js-line-number\" data-line-number=\"8180\"></td>\n        <td id=\"LC8180\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8181\" class=\"blob-num js-line-number\" data-line-number=\"8181\"></td>\n        <td id=\"LC8181\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> regexp <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\+</span><span class=\"pl-pds\">/</span>g</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8182\" class=\"blob-num js-line-number\" data-line-number=\"8182\"></td>\n        <td id=\"LC8182\" class=\"blob-code blob-code-inner js-file-line\">  qs <span class=\"pl-k\">=</span> <span class=\"pl-smi\">qs</span>.<span class=\"pl-c1\">split</span>(sep);</td>\n      </tr>\n      <tr>\n        <td id=\"L8183\" class=\"blob-num js-line-number\" data-line-number=\"8183\"></td>\n        <td id=\"LC8183\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8184\" class=\"blob-num js-line-number\" data-line-number=\"8184\"></td>\n        <td id=\"LC8184\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> maxKeys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1000</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8185\" class=\"blob-num js-line-number\" data-line-number=\"8185\"></td>\n        <td id=\"LC8185\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (options <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">maxKeys</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8186\" class=\"blob-num js-line-number\" data-line-number=\"8186\"></td>\n        <td id=\"LC8186\" class=\"blob-code blob-code-inner js-file-line\">    maxKeys <span class=\"pl-k\">=</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">maxKeys</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8187\" class=\"blob-num js-line-number\" data-line-number=\"8187\"></td>\n        <td id=\"LC8187\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8188\" class=\"blob-num js-line-number\" data-line-number=\"8188\"></td>\n        <td id=\"LC8188\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8189\" class=\"blob-num js-line-number\" data-line-number=\"8189\"></td>\n        <td id=\"LC8189\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">qs</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8190\" class=\"blob-num js-line-number\" data-line-number=\"8190\"></td>\n        <td id=\"LC8190\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (maxKeys <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> len <span class=\"pl-k\">&gt;</span> maxKeys) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8191\" class=\"blob-num js-line-number\" data-line-number=\"8191\"></td>\n        <td id=\"LC8191\" class=\"blob-code blob-code-inner js-file-line\">    len <span class=\"pl-k\">=</span> maxKeys;</td>\n      </tr>\n      <tr>\n        <td id=\"L8192\" class=\"blob-num js-line-number\" data-line-number=\"8192\"></td>\n        <td id=\"LC8192\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8193\" class=\"blob-num js-line-number\" data-line-number=\"8193\"></td>\n        <td id=\"LC8193\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8194\" class=\"blob-num js-line-number\" data-line-number=\"8194\"></td>\n        <td id=\"LC8194\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> len; <span class=\"pl-k\">++</span>i) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8195\" class=\"blob-num js-line-number\" data-line-number=\"8195\"></td>\n        <td id=\"LC8195\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> x <span class=\"pl-k\">=</span> qs[i].<span class=\"pl-c1\">replace</span>(regexp, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%20<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L8196\" class=\"blob-num js-line-number\" data-line-number=\"8196\"></td>\n        <td id=\"LC8196\" class=\"blob-code blob-code-inner js-file-line\">        idx <span class=\"pl-k\">=</span> <span class=\"pl-smi\">x</span>.<span class=\"pl-c1\">indexOf</span>(eq),</td>\n      </tr>\n      <tr>\n        <td id=\"L8197\" class=\"blob-num js-line-number\" data-line-number=\"8197\"></td>\n        <td id=\"LC8197\" class=\"blob-code blob-code-inner js-file-line\">        kstr, vstr, k, v;</td>\n      </tr>\n      <tr>\n        <td id=\"L8198\" class=\"blob-num js-line-number\" data-line-number=\"8198\"></td>\n        <td id=\"LC8198\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8199\" class=\"blob-num js-line-number\" data-line-number=\"8199\"></td>\n        <td id=\"LC8199\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (idx <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8200\" class=\"blob-num js-line-number\" data-line-number=\"8200\"></td>\n        <td id=\"LC8200\" class=\"blob-code blob-code-inner js-file-line\">      kstr <span class=\"pl-k\">=</span> <span class=\"pl-smi\">x</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">0</span>, idx);</td>\n      </tr>\n      <tr>\n        <td id=\"L8201\" class=\"blob-num js-line-number\" data-line-number=\"8201\"></td>\n        <td id=\"LC8201\" class=\"blob-code blob-code-inner js-file-line\">      vstr <span class=\"pl-k\">=</span> <span class=\"pl-smi\">x</span>.<span class=\"pl-c1\">substr</span>(idx <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8202\" class=\"blob-num js-line-number\" data-line-number=\"8202\"></td>\n        <td id=\"LC8202\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8203\" class=\"blob-num js-line-number\" data-line-number=\"8203\"></td>\n        <td id=\"LC8203\" class=\"blob-code blob-code-inner js-file-line\">      kstr <span class=\"pl-k\">=</span> x;</td>\n      </tr>\n      <tr>\n        <td id=\"L8204\" class=\"blob-num js-line-number\" data-line-number=\"8204\"></td>\n        <td id=\"LC8204\" class=\"blob-code blob-code-inner js-file-line\">      vstr <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8205\" class=\"blob-num js-line-number\" data-line-number=\"8205\"></td>\n        <td id=\"LC8205\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8206\" class=\"blob-num js-line-number\" data-line-number=\"8206\"></td>\n        <td id=\"LC8206\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8207\" class=\"blob-num js-line-number\" data-line-number=\"8207\"></td>\n        <td id=\"LC8207\" class=\"blob-code blob-code-inner js-file-line\">    k <span class=\"pl-k\">=</span> <span class=\"pl-c1\">decodeURIComponent</span>(kstr);</td>\n      </tr>\n      <tr>\n        <td id=\"L8208\" class=\"blob-num js-line-number\" data-line-number=\"8208\"></td>\n        <td id=\"LC8208\" class=\"blob-code blob-code-inner js-file-line\">    v <span class=\"pl-k\">=</span> <span class=\"pl-c1\">decodeURIComponent</span>(vstr);</td>\n      </tr>\n      <tr>\n        <td id=\"L8209\" class=\"blob-num js-line-number\" data-line-number=\"8209\"></td>\n        <td id=\"LC8209\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8210\" class=\"blob-num js-line-number\" data-line-number=\"8210\"></td>\n        <td id=\"LC8210\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">hasOwnProperty</span>(obj, k)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8211\" class=\"blob-num js-line-number\" data-line-number=\"8211\"></td>\n        <td id=\"LC8211\" class=\"blob-code blob-code-inner js-file-line\">      obj[k] <span class=\"pl-k\">=</span> v;</td>\n      </tr>\n      <tr>\n        <td id=\"L8212\" class=\"blob-num js-line-number\" data-line-number=\"8212\"></td>\n        <td id=\"LC8212\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isArray</span>(obj[k])) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8213\" class=\"blob-num js-line-number\" data-line-number=\"8213\"></td>\n        <td id=\"LC8213\" class=\"blob-code blob-code-inner js-file-line\">      obj[k].<span class=\"pl-c1\">push</span>(v);</td>\n      </tr>\n      <tr>\n        <td id=\"L8214\" class=\"blob-num js-line-number\" data-line-number=\"8214\"></td>\n        <td id=\"LC8214\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8215\" class=\"blob-num js-line-number\" data-line-number=\"8215\"></td>\n        <td id=\"LC8215\" class=\"blob-code blob-code-inner js-file-line\">      obj[k] <span class=\"pl-k\">=</span> [obj[k], v];</td>\n      </tr>\n      <tr>\n        <td id=\"L8216\" class=\"blob-num js-line-number\" data-line-number=\"8216\"></td>\n        <td id=\"LC8216\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8217\" class=\"blob-num js-line-number\" data-line-number=\"8217\"></td>\n        <td id=\"LC8217\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8218\" class=\"blob-num js-line-number\" data-line-number=\"8218\"></td>\n        <td id=\"LC8218\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8219\" class=\"blob-num js-line-number\" data-line-number=\"8219\"></td>\n        <td id=\"LC8219\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> obj;</td>\n      </tr>\n      <tr>\n        <td id=\"L8220\" class=\"blob-num js-line-number\" data-line-number=\"8220\"></td>\n        <td id=\"LC8220\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8221\" class=\"blob-num js-line-number\" data-line-number=\"8221\"></td>\n        <td id=\"LC8221\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8222\" class=\"blob-num js-line-number\" data-line-number=\"8222\"></td>\n        <td id=\"LC8222\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Array</span>.<span class=\"pl-smi\">isArray</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">xs</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8223\" class=\"blob-num js-line-number\" data-line-number=\"8223\"></td>\n        <td id=\"LC8223\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>.<span class=\"pl-c1\">call</span>(xs) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Array]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8224\" class=\"blob-num js-line-number\" data-line-number=\"8224\"></td>\n        <td id=\"LC8224\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8225\" class=\"blob-num js-line-number\" data-line-number=\"8225\"></td>\n        <td id=\"LC8225\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8226\" class=\"blob-num js-line-number\" data-line-number=\"8226\"></td>\n        <td id=\"LC8226\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">61</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L8227\" class=\"blob-num js-line-number\" data-line-number=\"8227\"></td>\n        <td id=\"LC8227\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8228\" class=\"blob-num js-line-number\" data-line-number=\"8228\"></td>\n        <td id=\"LC8228\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>use strict<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8229\" class=\"blob-num js-line-number\" data-line-number=\"8229\"></td>\n        <td id=\"LC8229\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8230\" class=\"blob-num js-line-number\" data-line-number=\"8230\"></td>\n        <td id=\"LC8230\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-en\">stringifyPrimitive</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">v</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8231\" class=\"blob-num js-line-number\" data-line-number=\"8231\"></td>\n        <td id=\"LC8231\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (<span class=\"pl-k\">typeof</span> v) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8232\" class=\"blob-num js-line-number\" data-line-number=\"8232\"></td>\n        <td id=\"LC8232\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8233\" class=\"blob-num js-line-number\" data-line-number=\"8233\"></td>\n        <td id=\"LC8233\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> v;</td>\n      </tr>\n      <tr>\n        <td id=\"L8234\" class=\"blob-num js-line-number\" data-line-number=\"8234\"></td>\n        <td id=\"LC8234\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8235\" class=\"blob-num js-line-number\" data-line-number=\"8235\"></td>\n        <td id=\"LC8235\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8236\" class=\"blob-num js-line-number\" data-line-number=\"8236\"></td>\n        <td id=\"LC8236\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> v <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>true<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>false<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8237\" class=\"blob-num js-line-number\" data-line-number=\"8237\"></td>\n        <td id=\"LC8237\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8238\" class=\"blob-num js-line-number\" data-line-number=\"8238\"></td>\n        <td id=\"LC8238\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8239\" class=\"blob-num js-line-number\" data-line-number=\"8239\"></td>\n        <td id=\"LC8239\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">isFinite</span>(v) <span class=\"pl-k\">?</span> v <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8240\" class=\"blob-num js-line-number\" data-line-number=\"8240\"></td>\n        <td id=\"LC8240\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8241\" class=\"blob-num js-line-number\" data-line-number=\"8241\"></td>\n        <td id=\"LC8241\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8242\" class=\"blob-num js-line-number\" data-line-number=\"8242\"></td>\n        <td id=\"LC8242\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8243\" class=\"blob-num js-line-number\" data-line-number=\"8243\"></td>\n        <td id=\"LC8243\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8244\" class=\"blob-num js-line-number\" data-line-number=\"8244\"></td>\n        <td id=\"LC8244\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8245\" class=\"blob-num js-line-number\" data-line-number=\"8245\"></td>\n        <td id=\"LC8245\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8246\" class=\"blob-num js-line-number\" data-line-number=\"8246\"></td>\n        <td id=\"LC8246\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-en\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">obj</span>, <span class=\"pl-smi\">sep</span>, <span class=\"pl-smi\">eq</span>, <span class=\"pl-smi\">name</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8247\" class=\"blob-num js-line-number\" data-line-number=\"8247\"></td>\n        <td id=\"LC8247\" class=\"blob-code blob-code-inner js-file-line\">  sep <span class=\"pl-k\">=</span> sep <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8248\" class=\"blob-num js-line-number\" data-line-number=\"8248\"></td>\n        <td id=\"LC8248\" class=\"blob-code blob-code-inner js-file-line\">  eq <span class=\"pl-k\">=</span> eq <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8249\" class=\"blob-num js-line-number\" data-line-number=\"8249\"></td>\n        <td id=\"LC8249\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (obj <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8250\" class=\"blob-num js-line-number\" data-line-number=\"8250\"></td>\n        <td id=\"LC8250\" class=\"blob-code blob-code-inner js-file-line\">    obj <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8251\" class=\"blob-num js-line-number\" data-line-number=\"8251\"></td>\n        <td id=\"LC8251\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8252\" class=\"blob-num js-line-number\" data-line-number=\"8252\"></td>\n        <td id=\"LC8252\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8253\" class=\"blob-num js-line-number\" data-line-number=\"8253\"></td>\n        <td id=\"LC8253\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> obj <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8254\" class=\"blob-num js-line-number\" data-line-number=\"8254\"></td>\n        <td id=\"LC8254\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-en\">map</span>(<span class=\"pl-en\">objectKeys</span>(obj), <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">k</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8255\" class=\"blob-num js-line-number\" data-line-number=\"8255\"></td>\n        <td id=\"LC8255\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> ks <span class=\"pl-k\">=</span> <span class=\"pl-c1\">encodeURIComponent</span>(<span class=\"pl-en\">stringifyPrimitive</span>(k)) <span class=\"pl-k\">+</span> eq;</td>\n      </tr>\n      <tr>\n        <td id=\"L8256\" class=\"blob-num js-line-number\" data-line-number=\"8256\"></td>\n        <td id=\"LC8256\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isArray</span>(obj[k])) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8257\" class=\"blob-num js-line-number\" data-line-number=\"8257\"></td>\n        <td id=\"LC8257\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> obj[k].<span class=\"pl-en\">map</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">v</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8258\" class=\"blob-num js-line-number\" data-line-number=\"8258\"></td>\n        <td id=\"LC8258\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">return</span> ks <span class=\"pl-k\">+</span> <span class=\"pl-c1\">encodeURIComponent</span>(<span class=\"pl-en\">stringifyPrimitive</span>(v));</td>\n      </tr>\n      <tr>\n        <td id=\"L8259\" class=\"blob-num js-line-number\" data-line-number=\"8259\"></td>\n        <td id=\"LC8259\" class=\"blob-code blob-code-inner js-file-line\">        }).<span class=\"pl-c1\">join</span>(sep);</td>\n      </tr>\n      <tr>\n        <td id=\"L8260\" class=\"blob-num js-line-number\" data-line-number=\"8260\"></td>\n        <td id=\"LC8260\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8261\" class=\"blob-num js-line-number\" data-line-number=\"8261\"></td>\n        <td id=\"LC8261\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> ks <span class=\"pl-k\">+</span> <span class=\"pl-c1\">encodeURIComponent</span>(<span class=\"pl-en\">stringifyPrimitive</span>(obj[k]));</td>\n      </tr>\n      <tr>\n        <td id=\"L8262\" class=\"blob-num js-line-number\" data-line-number=\"8262\"></td>\n        <td id=\"LC8262\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L8263\" class=\"blob-num js-line-number\" data-line-number=\"8263\"></td>\n        <td id=\"LC8263\" class=\"blob-code blob-code-inner js-file-line\">    }).<span class=\"pl-c1\">join</span>(sep);</td>\n      </tr>\n      <tr>\n        <td id=\"L8264\" class=\"blob-num js-line-number\" data-line-number=\"8264\"></td>\n        <td id=\"LC8264\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8265\" class=\"blob-num js-line-number\" data-line-number=\"8265\"></td>\n        <td id=\"LC8265\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8266\" class=\"blob-num js-line-number\" data-line-number=\"8266\"></td>\n        <td id=\"LC8266\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8267\" class=\"blob-num js-line-number\" data-line-number=\"8267\"></td>\n        <td id=\"LC8267\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>name) <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8268\" class=\"blob-num js-line-number\" data-line-number=\"8268\"></td>\n        <td id=\"LC8268\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">encodeURIComponent</span>(<span class=\"pl-en\">stringifyPrimitive</span>(name)) <span class=\"pl-k\">+</span> eq <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8269\" class=\"blob-num js-line-number\" data-line-number=\"8269\"></td>\n        <td id=\"LC8269\" class=\"blob-code blob-code-inner js-file-line\">         <span class=\"pl-c1\">encodeURIComponent</span>(<span class=\"pl-en\">stringifyPrimitive</span>(obj));</td>\n      </tr>\n      <tr>\n        <td id=\"L8270\" class=\"blob-num js-line-number\" data-line-number=\"8270\"></td>\n        <td id=\"LC8270\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8271\" class=\"blob-num js-line-number\" data-line-number=\"8271\"></td>\n        <td id=\"LC8271\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8272\" class=\"blob-num js-line-number\" data-line-number=\"8272\"></td>\n        <td id=\"LC8272\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Array</span>.<span class=\"pl-smi\">isArray</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">xs</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8273\" class=\"blob-num js-line-number\" data-line-number=\"8273\"></td>\n        <td id=\"LC8273\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>.<span class=\"pl-c1\">call</span>(xs) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Array]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8274\" class=\"blob-num js-line-number\" data-line-number=\"8274\"></td>\n        <td id=\"LC8274\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8275\" class=\"blob-num js-line-number\" data-line-number=\"8275\"></td>\n        <td id=\"LC8275\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8276\" class=\"blob-num js-line-number\" data-line-number=\"8276\"></td>\n        <td id=\"LC8276\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">map</span> (<span class=\"pl-smi\">xs</span>, <span class=\"pl-smi\">f</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8277\" class=\"blob-num js-line-number\" data-line-number=\"8277\"></td>\n        <td id=\"LC8277\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">xs</span>.<span class=\"pl-smi\">map</span>) <span class=\"pl-k\">return</span> <span class=\"pl-smi\">xs</span>.<span class=\"pl-en\">map</span>(f);</td>\n      </tr>\n      <tr>\n        <td id=\"L8278\" class=\"blob-num js-line-number\" data-line-number=\"8278\"></td>\n        <td id=\"LC8278\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> res <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L8279\" class=\"blob-num js-line-number\" data-line-number=\"8279\"></td>\n        <td id=\"LC8279\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">xs</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8280\" class=\"blob-num js-line-number\" data-line-number=\"8280\"></td>\n        <td id=\"LC8280\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">res</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-en\">f</span>(xs[i], i));</td>\n      </tr>\n      <tr>\n        <td id=\"L8281\" class=\"blob-num js-line-number\" data-line-number=\"8281\"></td>\n        <td id=\"LC8281\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8282\" class=\"blob-num js-line-number\" data-line-number=\"8282\"></td>\n        <td id=\"LC8282\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> res;</td>\n      </tr>\n      <tr>\n        <td id=\"L8283\" class=\"blob-num js-line-number\" data-line-number=\"8283\"></td>\n        <td id=\"LC8283\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8284\" class=\"blob-num js-line-number\" data-line-number=\"8284\"></td>\n        <td id=\"LC8284\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8285\" class=\"blob-num js-line-number\" data-line-number=\"8285\"></td>\n        <td id=\"LC8285\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectKeys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-smi\">keys</span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">function</span> (<span class=\"pl-smi\">obj</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8286\" class=\"blob-num js-line-number\" data-line-number=\"8286\"></td>\n        <td id=\"LC8286\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> res <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L8287\" class=\"blob-num js-line-number\" data-line-number=\"8287\"></td>\n        <td id=\"LC8287\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> key <span class=\"pl-k\">in</span> obj) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8288\" class=\"blob-num js-line-number\" data-line-number=\"8288\"></td>\n        <td id=\"LC8288\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(obj, key)) <span class=\"pl-smi\">res</span>.<span class=\"pl-c1\">push</span>(key);</td>\n      </tr>\n      <tr>\n        <td id=\"L8289\" class=\"blob-num js-line-number\" data-line-number=\"8289\"></td>\n        <td id=\"LC8289\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8290\" class=\"blob-num js-line-number\" data-line-number=\"8290\"></td>\n        <td id=\"LC8290\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> res;</td>\n      </tr>\n      <tr>\n        <td id=\"L8291\" class=\"blob-num js-line-number\" data-line-number=\"8291\"></td>\n        <td id=\"LC8291\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8292\" class=\"blob-num js-line-number\" data-line-number=\"8292\"></td>\n        <td id=\"LC8292\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8293\" class=\"blob-num js-line-number\" data-line-number=\"8293\"></td>\n        <td id=\"LC8293\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">62</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L8294\" class=\"blob-num js-line-number\" data-line-number=\"8294\"></td>\n        <td id=\"LC8294\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>use strict<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8295\" class=\"blob-num js-line-number\" data-line-number=\"8295\"></td>\n        <td id=\"LC8295\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8296\" class=\"blob-num js-line-number\" data-line-number=\"8296\"></td>\n        <td id=\"LC8296\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">decode</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">parse</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./decode<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8297\" class=\"blob-num js-line-number\" data-line-number=\"8297\"></td>\n        <td id=\"LC8297\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">encode</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">stringify</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./encode<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8298\" class=\"blob-num js-line-number\" data-line-number=\"8298\"></td>\n        <td id=\"LC8298\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8299\" class=\"blob-num js-line-number\" data-line-number=\"8299\"></td>\n        <td id=\"LC8299\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./decode<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">60</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./encode<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">61</span>}],<span class=\"pl-c1\">63</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L8300\" class=\"blob-num js-line-number\" data-line-number=\"8300\"></td>\n        <td id=\"LC8300\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8301\" class=\"blob-num js-line-number\" data-line-number=\"8301\"></td>\n        <td id=\"LC8301\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> punycode <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>punycode<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8302\" class=\"blob-num js-line-number\" data-line-number=\"8302\"></td>\n        <td id=\"LC8302\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8303\" class=\"blob-num js-line-number\" data-line-number=\"8303\"></td>\n        <td id=\"LC8303\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">parse</span> <span class=\"pl-k\">=</span> urlParse;</td>\n      </tr>\n      <tr>\n        <td id=\"L8304\" class=\"blob-num js-line-number\" data-line-number=\"8304\"></td>\n        <td id=\"LC8304\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">resolve</span> <span class=\"pl-k\">=</span> urlResolve;</td>\n      </tr>\n      <tr>\n        <td id=\"L8305\" class=\"blob-num js-line-number\" data-line-number=\"8305\"></td>\n        <td id=\"LC8305\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">resolveObject</span> <span class=\"pl-k\">=</span> urlResolveObject;</td>\n      </tr>\n      <tr>\n        <td id=\"L8306\" class=\"blob-num js-line-number\" data-line-number=\"8306\"></td>\n        <td id=\"LC8306\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">format</span> <span class=\"pl-k\">=</span> urlFormat;</td>\n      </tr>\n      <tr>\n        <td id=\"L8307\" class=\"blob-num js-line-number\" data-line-number=\"8307\"></td>\n        <td id=\"LC8307\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8308\" class=\"blob-num js-line-number\" data-line-number=\"8308\"></td>\n        <td id=\"LC8308\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">Url</span> <span class=\"pl-k\">=</span> Url;</td>\n      </tr>\n      <tr>\n        <td id=\"L8309\" class=\"blob-num js-line-number\" data-line-number=\"8309\"></td>\n        <td id=\"LC8309\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8310\" class=\"blob-num js-line-number\" data-line-number=\"8310\"></td>\n        <td id=\"LC8310\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">Url</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L8311\" class=\"blob-num js-line-number\" data-line-number=\"8311\"></td>\n        <td id=\"LC8311\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8312\" class=\"blob-num js-line-number\" data-line-number=\"8312\"></td>\n        <td id=\"LC8312\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">slashes</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8313\" class=\"blob-num js-line-number\" data-line-number=\"8313\"></td>\n        <td id=\"LC8313\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">auth</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8314\" class=\"blob-num js-line-number\" data-line-number=\"8314\"></td>\n        <td id=\"LC8314\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8315\" class=\"blob-num js-line-number\" data-line-number=\"8315\"></td>\n        <td id=\"LC8315\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">port</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8316\" class=\"blob-num js-line-number\" data-line-number=\"8316\"></td>\n        <td id=\"LC8316\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8317\" class=\"blob-num js-line-number\" data-line-number=\"8317\"></td>\n        <td id=\"LC8317\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hash</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8318\" class=\"blob-num js-line-number\" data-line-number=\"8318\"></td>\n        <td id=\"LC8318\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8319\" class=\"blob-num js-line-number\" data-line-number=\"8319\"></td>\n        <td id=\"LC8319\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">query</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8320\" class=\"blob-num js-line-number\" data-line-number=\"8320\"></td>\n        <td id=\"LC8320\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8321\" class=\"blob-num js-line-number\" data-line-number=\"8321\"></td>\n        <td id=\"LC8321\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8322\" class=\"blob-num js-line-number\" data-line-number=\"8322\"></td>\n        <td id=\"LC8322\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">href</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8323\" class=\"blob-num js-line-number\" data-line-number=\"8323\"></td>\n        <td id=\"LC8323\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8324\" class=\"blob-num js-line-number\" data-line-number=\"8324\"></td>\n        <td id=\"LC8324\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8325\" class=\"blob-num js-line-number\" data-line-number=\"8325\"></td>\n        <td id=\"LC8325\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8326\" class=\"blob-num js-line-number\" data-line-number=\"8326\"></td>\n        <td id=\"LC8326\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> protocolPattern <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span>(<span class=\"pl-c1\">[<span class=\"pl-c1\">a-z0-9</span><span class=\"pl-c1\">.</span>+-]</span><span class=\"pl-k\">+</span>:)<span class=\"pl-pds\">/</span>i</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8327\" class=\"blob-num js-line-number\" data-line-number=\"8327\"></td>\n        <td id=\"LC8327\" class=\"blob-code blob-code-inner js-file-line\">    portPattern <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span>:<span class=\"pl-c1\">[<span class=\"pl-c1\">0-9</span>]</span><span class=\"pl-k\">*</span><span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8328\" class=\"blob-num js-line-number\" data-line-number=\"8328\"></td>\n        <td id=\"LC8328\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8329\" class=\"blob-num js-line-number\" data-line-number=\"8329\"></td>\n        <td id=\"LC8329\" class=\"blob-code blob-code-inner js-file-line\">    delims <span class=\"pl-k\">=</span> [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&gt;<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>`<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\r</span><span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\t</span><span class=\"pl-pds\">&#39;</span></span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L8330\" class=\"blob-num js-line-number\" data-line-number=\"8330\"></td>\n        <td id=\"LC8330\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8331\" class=\"blob-num js-line-number\" data-line-number=\"8331\"></td>\n        <td id=\"LC8331\" class=\"blob-code blob-code-inner js-file-line\">    unwise <span class=\"pl-k\">=</span> [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>{<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>}<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>|<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\\\</span><span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>^<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>`<span class=\"pl-pds\">&#39;</span></span>].<span class=\"pl-c1\">concat</span>(delims),</td>\n      </tr>\n      <tr>\n        <td id=\"L8332\" class=\"blob-num js-line-number\" data-line-number=\"8332\"></td>\n        <td id=\"LC8332\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8333\" class=\"blob-num js-line-number\" data-line-number=\"8333\"></td>\n        <td id=\"LC8333\" class=\"blob-code blob-code-inner js-file-line\">    autoEscape <span class=\"pl-k\">=</span> [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\&#39;</span><span class=\"pl-pds\">&#39;</span></span>].<span class=\"pl-c1\">concat</span>(unwise),</td>\n      </tr>\n      <tr>\n        <td id=\"L8334\" class=\"blob-num js-line-number\" data-line-number=\"8334\"></td>\n        <td id=\"LC8334\" class=\"blob-code blob-code-inner js-file-line\">    nonHostChars <span class=\"pl-k\">=</span> [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>;<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#<span class=\"pl-pds\">&#39;</span></span>].<span class=\"pl-c1\">concat</span>(autoEscape),</td>\n      </tr>\n      <tr>\n        <td id=\"L8335\" class=\"blob-num js-line-number\" data-line-number=\"8335\"></td>\n        <td id=\"LC8335\" class=\"blob-code blob-code-inner js-file-line\">    hostEndingChars <span class=\"pl-k\">=</span> [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#<span class=\"pl-pds\">&#39;</span></span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L8336\" class=\"blob-num js-line-number\" data-line-number=\"8336\"></td>\n        <td id=\"LC8336\" class=\"blob-code blob-code-inner js-file-line\">    hostnameMaxLen <span class=\"pl-k\">=</span> <span class=\"pl-c1\">255</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8337\" class=\"blob-num js-line-number\" data-line-number=\"8337\"></td>\n        <td id=\"LC8337\" class=\"blob-code blob-code-inner js-file-line\">    hostnamePartPattern <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">[<span class=\"pl-c1\">a-z0-9A-Z</span>_-]</span><span class=\"pl-k\">{0,63}</span><span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8338\" class=\"blob-num js-line-number\" data-line-number=\"8338\"></td>\n        <td id=\"LC8338\" class=\"blob-code blob-code-inner js-file-line\">    hostnamePartStart <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span>(<span class=\"pl-c1\">[<span class=\"pl-c1\">a-z0-9A-Z</span>_-]</span><span class=\"pl-k\">{0,63}</span>)(<span class=\"pl-c1\">.</span><span class=\"pl-k\">*</span>)<span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8339\" class=\"blob-num js-line-number\" data-line-number=\"8339\"></td>\n        <td id=\"LC8339\" class=\"blob-code blob-code-inner js-file-line\">    unsafeProtocol <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8340\" class=\"blob-num js-line-number\" data-line-number=\"8340\"></td>\n        <td id=\"LC8340\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>javascript<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8341\" class=\"blob-num js-line-number\" data-line-number=\"8341\"></td>\n        <td id=\"LC8341\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>javascript:<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8342\" class=\"blob-num js-line-number\" data-line-number=\"8342\"></td>\n        <td id=\"LC8342\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L8343\" class=\"blob-num js-line-number\" data-line-number=\"8343\"></td>\n        <td id=\"LC8343\" class=\"blob-code blob-code-inner js-file-line\">    hostlessProtocol <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8344\" class=\"blob-num js-line-number\" data-line-number=\"8344\"></td>\n        <td id=\"LC8344\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>javascript<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8345\" class=\"blob-num js-line-number\" data-line-number=\"8345\"></td>\n        <td id=\"LC8345\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>javascript:<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8346\" class=\"blob-num js-line-number\" data-line-number=\"8346\"></td>\n        <td id=\"LC8346\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L8347\" class=\"blob-num js-line-number\" data-line-number=\"8347\"></td>\n        <td id=\"LC8347\" class=\"blob-code blob-code-inner js-file-line\">    slashedProtocol <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8348\" class=\"blob-num js-line-number\" data-line-number=\"8348\"></td>\n        <td id=\"LC8348\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>http<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8349\" class=\"blob-num js-line-number\" data-line-number=\"8349\"></td>\n        <td id=\"LC8349\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>https<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8350\" class=\"blob-num js-line-number\" data-line-number=\"8350\"></td>\n        <td id=\"LC8350\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ftp<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8351\" class=\"blob-num js-line-number\" data-line-number=\"8351\"></td>\n        <td id=\"LC8351\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>gopher<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8352\" class=\"blob-num js-line-number\" data-line-number=\"8352\"></td>\n        <td id=\"LC8352\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>file<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8353\" class=\"blob-num js-line-number\" data-line-number=\"8353\"></td>\n        <td id=\"LC8353\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>http:<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8354\" class=\"blob-num js-line-number\" data-line-number=\"8354\"></td>\n        <td id=\"LC8354\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>https:<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8355\" class=\"blob-num js-line-number\" data-line-number=\"8355\"></td>\n        <td id=\"LC8355\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>ftp:<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8356\" class=\"blob-num js-line-number\" data-line-number=\"8356\"></td>\n        <td id=\"LC8356\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>gopher:<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8357\" class=\"blob-num js-line-number\" data-line-number=\"8357\"></td>\n        <td id=\"LC8357\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>file:<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-c1\">true</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8358\" class=\"blob-num js-line-number\" data-line-number=\"8358\"></td>\n        <td id=\"LC8358\" class=\"blob-code blob-code-inner js-file-line\">    },</td>\n      </tr>\n      <tr>\n        <td id=\"L8359\" class=\"blob-num js-line-number\" data-line-number=\"8359\"></td>\n        <td id=\"LC8359\" class=\"blob-code blob-code-inner js-file-line\">    querystring <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>querystring<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8360\" class=\"blob-num js-line-number\" data-line-number=\"8360\"></td>\n        <td id=\"LC8360\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8361\" class=\"blob-num js-line-number\" data-line-number=\"8361\"></td>\n        <td id=\"LC8361\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">urlParse</span>(<span class=\"pl-smi\">url</span>, <span class=\"pl-smi\">parseQueryString</span>, <span class=\"pl-smi\">slashesDenoteHost</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8362\" class=\"blob-num js-line-number\" data-line-number=\"8362\"></td>\n        <td id=\"LC8362\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (url <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isObject</span>(url) <span class=\"pl-k\">&amp;&amp;</span> url <span class=\"pl-k\">instanceof</span> Url) <span class=\"pl-k\">return</span> url;</td>\n      </tr>\n      <tr>\n        <td id=\"L8363\" class=\"blob-num js-line-number\" data-line-number=\"8363\"></td>\n        <td id=\"LC8363\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8364\" class=\"blob-num js-line-number\" data-line-number=\"8364\"></td>\n        <td id=\"LC8364\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> u <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Url</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8365\" class=\"blob-num js-line-number\" data-line-number=\"8365\"></td>\n        <td id=\"LC8365\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">u</span>.<span class=\"pl-c1\">parse</span>(url, parseQueryString, slashesDenoteHost);</td>\n      </tr>\n      <tr>\n        <td id=\"L8366\" class=\"blob-num js-line-number\" data-line-number=\"8366\"></td>\n        <td id=\"LC8366\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> u;</td>\n      </tr>\n      <tr>\n        <td id=\"L8367\" class=\"blob-num js-line-number\" data-line-number=\"8367\"></td>\n        <td id=\"LC8367\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8368\" class=\"blob-num js-line-number\" data-line-number=\"8368\"></td>\n        <td id=\"LC8368\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8369\" class=\"blob-num js-line-number\" data-line-number=\"8369\"></td>\n        <td id=\"LC8369\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Url</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">parse</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">url</span>, <span class=\"pl-smi\">parseQueryString</span>, <span class=\"pl-smi\">slashesDenoteHost</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8370\" class=\"blob-num js-line-number\" data-line-number=\"8370\"></td>\n        <td id=\"LC8370\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isString</span>(url)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8371\" class=\"blob-num js-line-number\" data-line-number=\"8371\"></td>\n        <td id=\"LC8371\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">TypeError</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Parameter &#39;url&#39; must be a string, not <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-k\">typeof</span> url);</td>\n      </tr>\n      <tr>\n        <td id=\"L8372\" class=\"blob-num js-line-number\" data-line-number=\"8372\"></td>\n        <td id=\"LC8372\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8373\" class=\"blob-num js-line-number\" data-line-number=\"8373\"></td>\n        <td id=\"LC8373\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8374\" class=\"blob-num js-line-number\" data-line-number=\"8374\"></td>\n        <td id=\"LC8374\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> rest <span class=\"pl-k\">=</span> url;</td>\n      </tr>\n      <tr>\n        <td id=\"L8375\" class=\"blob-num js-line-number\" data-line-number=\"8375\"></td>\n        <td id=\"LC8375\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8376\" class=\"blob-num js-line-number\" data-line-number=\"8376\"></td>\n        <td id=\"LC8376\" class=\"blob-code blob-code-inner js-file-line\">  rest <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-en\">trim</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8377\" class=\"blob-num js-line-number\" data-line-number=\"8377\"></td>\n        <td id=\"LC8377\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8378\" class=\"blob-num js-line-number\" data-line-number=\"8378\"></td>\n        <td id=\"LC8378\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> proto <span class=\"pl-k\">=</span> <span class=\"pl-smi\">protocolPattern</span>.<span class=\"pl-c1\">exec</span>(rest);</td>\n      </tr>\n      <tr>\n        <td id=\"L8379\" class=\"blob-num js-line-number\" data-line-number=\"8379\"></td>\n        <td id=\"LC8379\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (proto) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8380\" class=\"blob-num js-line-number\" data-line-number=\"8380\"></td>\n        <td id=\"LC8380\" class=\"blob-code blob-code-inner js-file-line\">    proto <span class=\"pl-k\">=</span> proto[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L8381\" class=\"blob-num js-line-number\" data-line-number=\"8381\"></td>\n        <td id=\"LC8381\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> lowerProto <span class=\"pl-k\">=</span> <span class=\"pl-smi\">proto</span>.<span class=\"pl-c1\">toLowerCase</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8382\" class=\"blob-num js-line-number\" data-line-number=\"8382\"></td>\n        <td id=\"LC8382\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">=</span> lowerProto;</td>\n      </tr>\n      <tr>\n        <td id=\"L8383\" class=\"blob-num js-line-number\" data-line-number=\"8383\"></td>\n        <td id=\"LC8383\" class=\"blob-code blob-code-inner js-file-line\">    rest <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-smi\">proto</span>.<span class=\"pl-c1\">length</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8384\" class=\"blob-num js-line-number\" data-line-number=\"8384\"></td>\n        <td id=\"LC8384\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8385\" class=\"blob-num js-line-number\" data-line-number=\"8385\"></td>\n        <td id=\"LC8385\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8386\" class=\"blob-num js-line-number\" data-line-number=\"8386\"></td>\n        <td id=\"LC8386\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (slashesDenoteHost <span class=\"pl-k\">||</span> proto <span class=\"pl-k\">||</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-cce\">\\/\\/</span><span class=\"pl-c1\">[<span class=\"pl-k\">^</span>@<span class=\"pl-cce\">\\/</span>]</span><span class=\"pl-k\">+</span>@<span class=\"pl-c1\">[<span class=\"pl-k\">^</span>@<span class=\"pl-cce\">\\/</span>]</span><span class=\"pl-k\">+</span><span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8387\" class=\"blob-num js-line-number\" data-line-number=\"8387\"></td>\n        <td id=\"LC8387\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> slashes <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">0</span>, <span class=\"pl-c1\">2</span>) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>//<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8388\" class=\"blob-num js-line-number\" data-line-number=\"8388\"></td>\n        <td id=\"LC8388\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (slashes <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>(proto <span class=\"pl-k\">&amp;&amp;</span> hostlessProtocol[proto])) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8389\" class=\"blob-num js-line-number\" data-line-number=\"8389\"></td>\n        <td id=\"LC8389\" class=\"blob-code blob-code-inner js-file-line\">      rest <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">2</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8390\" class=\"blob-num js-line-number\" data-line-number=\"8390\"></td>\n        <td id=\"LC8390\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">slashes</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8391\" class=\"blob-num js-line-number\" data-line-number=\"8391\"></td>\n        <td id=\"LC8391\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8392\" class=\"blob-num js-line-number\" data-line-number=\"8392\"></td>\n        <td id=\"LC8392\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8393\" class=\"blob-num js-line-number\" data-line-number=\"8393\"></td>\n        <td id=\"LC8393\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8394\" class=\"blob-num js-line-number\" data-line-number=\"8394\"></td>\n        <td id=\"LC8394\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>hostlessProtocol[proto] <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8395\" class=\"blob-num js-line-number\" data-line-number=\"8395\"></td>\n        <td id=\"LC8395\" class=\"blob-code blob-code-inner js-file-line\">      (slashes <span class=\"pl-k\">||</span> (proto <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>slashedProtocol[proto]))) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8396\" class=\"blob-num js-line-number\" data-line-number=\"8396\"></td>\n        <td id=\"LC8396\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8397\" class=\"blob-num js-line-number\" data-line-number=\"8397\"></td>\n        <td id=\"LC8397\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8398\" class=\"blob-num js-line-number\" data-line-number=\"8398\"></td>\n        <td id=\"LC8398\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8399\" class=\"blob-num js-line-number\" data-line-number=\"8399\"></td>\n        <td id=\"LC8399\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> hostEnd <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8400\" class=\"blob-num js-line-number\" data-line-number=\"8400\"></td>\n        <td id=\"LC8400\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">hostEndingChars</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8401\" class=\"blob-num js-line-number\" data-line-number=\"8401\"></td>\n        <td id=\"LC8401\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> hec <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">indexOf</span>(hostEndingChars[i]);</td>\n      </tr>\n      <tr>\n        <td id=\"L8402\" class=\"blob-num js-line-number\" data-line-number=\"8402\"></td>\n        <td id=\"LC8402\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (hec <span class=\"pl-k\">!==</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">&amp;&amp;</span> (hostEnd <span class=\"pl-k\">===</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">||</span> hec <span class=\"pl-k\">&lt;</span> hostEnd))</td>\n      </tr>\n      <tr>\n        <td id=\"L8403\" class=\"blob-num js-line-number\" data-line-number=\"8403\"></td>\n        <td id=\"LC8403\" class=\"blob-code blob-code-inner js-file-line\">        hostEnd <span class=\"pl-k\">=</span> hec;</td>\n      </tr>\n      <tr>\n        <td id=\"L8404\" class=\"blob-num js-line-number\" data-line-number=\"8404\"></td>\n        <td id=\"LC8404\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8405\" class=\"blob-num js-line-number\" data-line-number=\"8405\"></td>\n        <td id=\"LC8405\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8406\" class=\"blob-num js-line-number\" data-line-number=\"8406\"></td>\n        <td id=\"LC8406\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> auth, atSign;</td>\n      </tr>\n      <tr>\n        <td id=\"L8407\" class=\"blob-num js-line-number\" data-line-number=\"8407\"></td>\n        <td id=\"LC8407\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (hostEnd <span class=\"pl-k\">===</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8408\" class=\"blob-num js-line-number\" data-line-number=\"8408\"></td>\n        <td id=\"LC8408\" class=\"blob-code blob-code-inner js-file-line\">      atSign <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">lastIndexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>@<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8409\" class=\"blob-num js-line-number\" data-line-number=\"8409\"></td>\n        <td id=\"LC8409\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8410\" class=\"blob-num js-line-number\" data-line-number=\"8410\"></td>\n        <td id=\"LC8410\" class=\"blob-code blob-code-inner js-file-line\">      atSign <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">lastIndexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>@<span class=\"pl-pds\">&#39;</span></span>, hostEnd);</td>\n      </tr>\n      <tr>\n        <td id=\"L8411\" class=\"blob-num js-line-number\" data-line-number=\"8411\"></td>\n        <td id=\"LC8411\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8412\" class=\"blob-num js-line-number\" data-line-number=\"8412\"></td>\n        <td id=\"LC8412\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8413\" class=\"blob-num js-line-number\" data-line-number=\"8413\"></td>\n        <td id=\"LC8413\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (atSign <span class=\"pl-k\">!==</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8414\" class=\"blob-num js-line-number\" data-line-number=\"8414\"></td>\n        <td id=\"LC8414\" class=\"blob-code blob-code-inner js-file-line\">      auth <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-c1\">0</span>, atSign);</td>\n      </tr>\n      <tr>\n        <td id=\"L8415\" class=\"blob-num js-line-number\" data-line-number=\"8415\"></td>\n        <td id=\"LC8415\" class=\"blob-code blob-code-inner js-file-line\">      rest <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">slice</span>(atSign <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8416\" class=\"blob-num js-line-number\" data-line-number=\"8416\"></td>\n        <td id=\"LC8416\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">auth</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">decodeURIComponent</span>(auth);</td>\n      </tr>\n      <tr>\n        <td id=\"L8417\" class=\"blob-num js-line-number\" data-line-number=\"8417\"></td>\n        <td id=\"LC8417\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8418\" class=\"blob-num js-line-number\" data-line-number=\"8418\"></td>\n        <td id=\"LC8418\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8419\" class=\"blob-num js-line-number\" data-line-number=\"8419\"></td>\n        <td id=\"LC8419\" class=\"blob-code blob-code-inner js-file-line\">    hostEnd <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8420\" class=\"blob-num js-line-number\" data-line-number=\"8420\"></td>\n        <td id=\"LC8420\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">nonHostChars</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8421\" class=\"blob-num js-line-number\" data-line-number=\"8421\"></td>\n        <td id=\"LC8421\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> hec <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">indexOf</span>(nonHostChars[i]);</td>\n      </tr>\n      <tr>\n        <td id=\"L8422\" class=\"blob-num js-line-number\" data-line-number=\"8422\"></td>\n        <td id=\"LC8422\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (hec <span class=\"pl-k\">!==</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">&amp;&amp;</span> (hostEnd <span class=\"pl-k\">===</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">||</span> hec <span class=\"pl-k\">&lt;</span> hostEnd))</td>\n      </tr>\n      <tr>\n        <td id=\"L8423\" class=\"blob-num js-line-number\" data-line-number=\"8423\"></td>\n        <td id=\"LC8423\" class=\"blob-code blob-code-inner js-file-line\">        hostEnd <span class=\"pl-k\">=</span> hec;</td>\n      </tr>\n      <tr>\n        <td id=\"L8424\" class=\"blob-num js-line-number\" data-line-number=\"8424\"></td>\n        <td id=\"LC8424\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8425\" class=\"blob-num js-line-number\" data-line-number=\"8425\"></td>\n        <td id=\"LC8425\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (hostEnd <span class=\"pl-k\">===</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L8426\" class=\"blob-num js-line-number\" data-line-number=\"8426\"></td>\n        <td id=\"LC8426\" class=\"blob-code blob-code-inner js-file-line\">      hostEnd <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8427\" class=\"blob-num js-line-number\" data-line-number=\"8427\"></td>\n        <td id=\"LC8427\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8428\" class=\"blob-num js-line-number\" data-line-number=\"8428\"></td>\n        <td id=\"LC8428\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-c1\">0</span>, hostEnd);</td>\n      </tr>\n      <tr>\n        <td id=\"L8429\" class=\"blob-num js-line-number\" data-line-number=\"8429\"></td>\n        <td id=\"LC8429\" class=\"blob-code blob-code-inner js-file-line\">    rest <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">slice</span>(hostEnd);</td>\n      </tr>\n      <tr>\n        <td id=\"L8430\" class=\"blob-num js-line-number\" data-line-number=\"8430\"></td>\n        <td id=\"LC8430\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8431\" class=\"blob-num js-line-number\" data-line-number=\"8431\"></td>\n        <td id=\"LC8431\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-en\">parseHost</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8432\" class=\"blob-num js-line-number\" data-line-number=\"8432\"></td>\n        <td id=\"LC8432\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8433\" class=\"blob-num js-line-number\" data-line-number=\"8433\"></td>\n        <td id=\"LC8433\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8434\" class=\"blob-num js-line-number\" data-line-number=\"8434\"></td>\n        <td id=\"LC8434\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8435\" class=\"blob-num js-line-number\" data-line-number=\"8435\"></td>\n        <td id=\"LC8435\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> ipv6Hostname <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span>[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8436\" class=\"blob-num js-line-number\" data-line-number=\"8436\"></td>\n        <td id=\"LC8436\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span>[<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8437\" class=\"blob-num js-line-number\" data-line-number=\"8437\"></td>\n        <td id=\"LC8437\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8438\" class=\"blob-num js-line-number\" data-line-number=\"8438\"></td>\n        <td id=\"LC8438\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>ipv6Hostname) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8439\" class=\"blob-num js-line-number\" data-line-number=\"8439\"></td>\n        <td id=\"LC8439\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> hostparts <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\.</span><span class=\"pl-pds\">/</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8440\" class=\"blob-num js-line-number\" data-line-number=\"8440\"></td>\n        <td id=\"LC8440\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, l <span class=\"pl-k\">=</span> <span class=\"pl-smi\">hostparts</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">&lt;</span> l; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8441\" class=\"blob-num js-line-number\" data-line-number=\"8441\"></td>\n        <td id=\"LC8441\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> part <span class=\"pl-k\">=</span> hostparts[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L8442\" class=\"blob-num js-line-number\" data-line-number=\"8442\"></td>\n        <td id=\"LC8442\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>part) <span class=\"pl-k\">continue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8443\" class=\"blob-num js-line-number\" data-line-number=\"8443\"></td>\n        <td id=\"LC8443\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">part</span>.<span class=\"pl-c1\">match</span>(hostnamePartPattern)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8444\" class=\"blob-num js-line-number\" data-line-number=\"8444\"></td>\n        <td id=\"LC8444\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">var</span> newpart <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8445\" class=\"blob-num js-line-number\" data-line-number=\"8445\"></td>\n        <td id=\"LC8445\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, k <span class=\"pl-k\">=</span> <span class=\"pl-smi\">part</span>.<span class=\"pl-c1\">length</span>; j <span class=\"pl-k\">&lt;</span> k; j<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8446\" class=\"blob-num js-line-number\" data-line-number=\"8446\"></td>\n        <td id=\"LC8446\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">part</span>.<span class=\"pl-c1\">charCodeAt</span>(j) <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">127</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8447\" class=\"blob-num js-line-number\" data-line-number=\"8447\"></td>\n        <td id=\"LC8447\" class=\"blob-code blob-code-inner js-file-line\">              newpart <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>x<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8448\" class=\"blob-num js-line-number\" data-line-number=\"8448\"></td>\n        <td id=\"LC8448\" class=\"blob-code blob-code-inner js-file-line\">            } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8449\" class=\"blob-num js-line-number\" data-line-number=\"8449\"></td>\n        <td id=\"LC8449\" class=\"blob-code blob-code-inner js-file-line\">              newpart <span class=\"pl-k\">+=</span> part[j];</td>\n      </tr>\n      <tr>\n        <td id=\"L8450\" class=\"blob-num js-line-number\" data-line-number=\"8450\"></td>\n        <td id=\"LC8450\" class=\"blob-code blob-code-inner js-file-line\">            }</td>\n      </tr>\n      <tr>\n        <td id=\"L8451\" class=\"blob-num js-line-number\" data-line-number=\"8451\"></td>\n        <td id=\"LC8451\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L8452\" class=\"blob-num js-line-number\" data-line-number=\"8452\"></td>\n        <td id=\"LC8452\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">newpart</span>.<span class=\"pl-c1\">match</span>(hostnamePartPattern)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8453\" class=\"blob-num js-line-number\" data-line-number=\"8453\"></td>\n        <td id=\"LC8453\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">var</span> validParts <span class=\"pl-k\">=</span> <span class=\"pl-smi\">hostparts</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-c1\">0</span>, i);</td>\n      </tr>\n      <tr>\n        <td id=\"L8454\" class=\"blob-num js-line-number\" data-line-number=\"8454\"></td>\n        <td id=\"LC8454\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">var</span> notHost <span class=\"pl-k\">=</span> <span class=\"pl-smi\">hostparts</span>.<span class=\"pl-c1\">slice</span>(i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8455\" class=\"blob-num js-line-number\" data-line-number=\"8455\"></td>\n        <td id=\"LC8455\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">var</span> bit <span class=\"pl-k\">=</span> <span class=\"pl-smi\">part</span>.<span class=\"pl-c1\">match</span>(hostnamePartStart);</td>\n      </tr>\n      <tr>\n        <td id=\"L8456\" class=\"blob-num js-line-number\" data-line-number=\"8456\"></td>\n        <td id=\"LC8456\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">if</span> (bit) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8457\" class=\"blob-num js-line-number\" data-line-number=\"8457\"></td>\n        <td id=\"LC8457\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-smi\">validParts</span>.<span class=\"pl-c1\">push</span>(bit[<span class=\"pl-c1\">1</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L8458\" class=\"blob-num js-line-number\" data-line-number=\"8458\"></td>\n        <td id=\"LC8458\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-smi\">notHost</span>.<span class=\"pl-c1\">unshift</span>(bit[<span class=\"pl-c1\">2</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L8459\" class=\"blob-num js-line-number\" data-line-number=\"8459\"></td>\n        <td id=\"LC8459\" class=\"blob-code blob-code-inner js-file-line\">            }</td>\n      </tr>\n      <tr>\n        <td id=\"L8460\" class=\"blob-num js-line-number\" data-line-number=\"8460\"></td>\n        <td id=\"LC8460\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">notHost</span>.<span class=\"pl-c1\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8461\" class=\"blob-num js-line-number\" data-line-number=\"8461\"></td>\n        <td id=\"LC8461\" class=\"blob-code blob-code-inner js-file-line\">              rest <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">notHost</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span> rest;</td>\n      </tr>\n      <tr>\n        <td id=\"L8462\" class=\"blob-num js-line-number\" data-line-number=\"8462\"></td>\n        <td id=\"LC8462\" class=\"blob-code blob-code-inner js-file-line\">            }</td>\n      </tr>\n      <tr>\n        <td id=\"L8463\" class=\"blob-num js-line-number\" data-line-number=\"8463\"></td>\n        <td id=\"LC8463\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">validParts</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8464\" class=\"blob-num js-line-number\" data-line-number=\"8464\"></td>\n        <td id=\"LC8464\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8465\" class=\"blob-num js-line-number\" data-line-number=\"8465\"></td>\n        <td id=\"LC8465\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L8466\" class=\"blob-num js-line-number\" data-line-number=\"8466\"></td>\n        <td id=\"LC8466\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L8467\" class=\"blob-num js-line-number\" data-line-number=\"8467\"></td>\n        <td id=\"LC8467\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L8468\" class=\"blob-num js-line-number\" data-line-number=\"8468\"></td>\n        <td id=\"LC8468\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8469\" class=\"blob-num js-line-number\" data-line-number=\"8469\"></td>\n        <td id=\"LC8469\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8470\" class=\"blob-num js-line-number\" data-line-number=\"8470\"></td>\n        <td id=\"LC8470\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> hostnameMaxLen) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8471\" class=\"blob-num js-line-number\" data-line-number=\"8471\"></td>\n        <td id=\"LC8471\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8472\" class=\"blob-num js-line-number\" data-line-number=\"8472\"></td>\n        <td id=\"LC8472\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8473\" class=\"blob-num js-line-number\" data-line-number=\"8473\"></td>\n        <td id=\"LC8473\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span>.<span class=\"pl-c1\">toLowerCase</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8474\" class=\"blob-num js-line-number\" data-line-number=\"8474\"></td>\n        <td id=\"LC8474\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8475\" class=\"blob-num js-line-number\" data-line-number=\"8475\"></td>\n        <td id=\"LC8475\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8476\" class=\"blob-num js-line-number\" data-line-number=\"8476\"></td>\n        <td id=\"LC8476\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>ipv6Hostname) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8477\" class=\"blob-num js-line-number\" data-line-number=\"8477\"></td>\n        <td id=\"LC8477\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> domainArray <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8478\" class=\"blob-num js-line-number\" data-line-number=\"8478\"></td>\n        <td id=\"LC8478\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> newOut <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L8479\" class=\"blob-num js-line-number\" data-line-number=\"8479\"></td>\n        <td id=\"LC8479\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-smi\">domainArray</span>.<span class=\"pl-c1\">length</span>; <span class=\"pl-k\">++</span>i) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8480\" class=\"blob-num js-line-number\" data-line-number=\"8480\"></td>\n        <td id=\"LC8480\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> s <span class=\"pl-k\">=</span> domainArray[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L8481\" class=\"blob-num js-line-number\" data-line-number=\"8481\"></td>\n        <td id=\"LC8481\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">newOut</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">s</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-c1\">[<span class=\"pl-k\">^</span><span class=\"pl-c1\">A-Za-z0-9</span>_-]</span><span class=\"pl-pds\">/</span></span>) <span class=\"pl-k\">?</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8482\" class=\"blob-num js-line-number\" data-line-number=\"8482\"></td>\n        <td id=\"LC8482\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>xn--<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">punycode</span>.<span class=\"pl-en\">encode</span>(s) <span class=\"pl-k\">:</span> s);</td>\n      </tr>\n      <tr>\n        <td id=\"L8483\" class=\"blob-num js-line-number\" data-line-number=\"8483\"></td>\n        <td id=\"LC8483\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L8484\" class=\"blob-num js-line-number\" data-line-number=\"8484\"></td>\n        <td id=\"LC8484\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">newOut</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8485\" class=\"blob-num js-line-number\" data-line-number=\"8485\"></td>\n        <td id=\"LC8485\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8486\" class=\"blob-num js-line-number\" data-line-number=\"8486\"></td>\n        <td id=\"LC8486\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8487\" class=\"blob-num js-line-number\" data-line-number=\"8487\"></td>\n        <td id=\"LC8487\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> p <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">port</span> <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">port</span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8488\" class=\"blob-num js-line-number\" data-line-number=\"8488\"></td>\n        <td id=\"LC8488\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> h <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8489\" class=\"blob-num js-line-number\" data-line-number=\"8489\"></td>\n        <td id=\"LC8489\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> h <span class=\"pl-k\">+</span> p;</td>\n      </tr>\n      <tr>\n        <td id=\"L8490\" class=\"blob-num js-line-number\" data-line-number=\"8490\"></td>\n        <td id=\"LC8490\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">href</span> <span class=\"pl-k\">+=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">host</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8491\" class=\"blob-num js-line-number\" data-line-number=\"8491\"></td>\n        <td id=\"LC8491\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8492\" class=\"blob-num js-line-number\" data-line-number=\"8492\"></td>\n        <td id=\"LC8492\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (ipv6Hostname) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8493\" class=\"blob-num js-line-number\" data-line-number=\"8493\"></td>\n        <td id=\"LC8493\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">1</span>, <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">2</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8494\" class=\"blob-num js-line-number\" data-line-number=\"8494\"></td>\n        <td id=\"LC8494\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (rest[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8495\" class=\"blob-num js-line-number\" data-line-number=\"8495\"></td>\n        <td id=\"LC8495\" class=\"blob-code blob-code-inner js-file-line\">        rest <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> rest;</td>\n      </tr>\n      <tr>\n        <td id=\"L8496\" class=\"blob-num js-line-number\" data-line-number=\"8496\"></td>\n        <td id=\"LC8496\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L8497\" class=\"blob-num js-line-number\" data-line-number=\"8497\"></td>\n        <td id=\"LC8497\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8498\" class=\"blob-num js-line-number\" data-line-number=\"8498\"></td>\n        <td id=\"LC8498\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8499\" class=\"blob-num js-line-number\" data-line-number=\"8499\"></td>\n        <td id=\"LC8499\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8500\" class=\"blob-num js-line-number\" data-line-number=\"8500\"></td>\n        <td id=\"LC8500\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>unsafeProtocol[lowerProto]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8501\" class=\"blob-num js-line-number\" data-line-number=\"8501\"></td>\n        <td id=\"LC8501\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8502\" class=\"blob-num js-line-number\" data-line-number=\"8502\"></td>\n        <td id=\"LC8502\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, l <span class=\"pl-k\">=</span> <span class=\"pl-smi\">autoEscape</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">&lt;</span> l; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8503\" class=\"blob-num js-line-number\" data-line-number=\"8503\"></td>\n        <td id=\"LC8503\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> ae <span class=\"pl-k\">=</span> autoEscape[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L8504\" class=\"blob-num js-line-number\" data-line-number=\"8504\"></td>\n        <td id=\"LC8504\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> esc <span class=\"pl-k\">=</span> <span class=\"pl-c1\">encodeURIComponent</span>(ae);</td>\n      </tr>\n      <tr>\n        <td id=\"L8505\" class=\"blob-num js-line-number\" data-line-number=\"8505\"></td>\n        <td id=\"LC8505\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (esc <span class=\"pl-k\">===</span> ae) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8506\" class=\"blob-num js-line-number\" data-line-number=\"8506\"></td>\n        <td id=\"LC8506\" class=\"blob-code blob-code-inner js-file-line\">        esc <span class=\"pl-k\">=</span> <span class=\"pl-c1\">escape</span>(ae);</td>\n      </tr>\n      <tr>\n        <td id=\"L8507\" class=\"blob-num js-line-number\" data-line-number=\"8507\"></td>\n        <td id=\"LC8507\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L8508\" class=\"blob-num js-line-number\" data-line-number=\"8508\"></td>\n        <td id=\"LC8508\" class=\"blob-code blob-code-inner js-file-line\">      rest <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">split</span>(ae).<span class=\"pl-c1\">join</span>(esc);</td>\n      </tr>\n      <tr>\n        <td id=\"L8509\" class=\"blob-num js-line-number\" data-line-number=\"8509\"></td>\n        <td id=\"LC8509\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8510\" class=\"blob-num js-line-number\" data-line-number=\"8510\"></td>\n        <td id=\"LC8510\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8511\" class=\"blob-num js-line-number\" data-line-number=\"8511\"></td>\n        <td id=\"LC8511\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8512\" class=\"blob-num js-line-number\" data-line-number=\"8512\"></td>\n        <td id=\"LC8512\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8513\" class=\"blob-num js-line-number\" data-line-number=\"8513\"></td>\n        <td id=\"LC8513\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> hash <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8514\" class=\"blob-num js-line-number\" data-line-number=\"8514\"></td>\n        <td id=\"LC8514\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (hash <span class=\"pl-k\">!==</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8515\" class=\"blob-num js-line-number\" data-line-number=\"8515\"></td>\n        <td id=\"LC8515\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hash</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">substr</span>(hash);</td>\n      </tr>\n      <tr>\n        <td id=\"L8516\" class=\"blob-num js-line-number\" data-line-number=\"8516\"></td>\n        <td id=\"LC8516\" class=\"blob-code blob-code-inner js-file-line\">    rest <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-c1\">0</span>, hash);</td>\n      </tr>\n      <tr>\n        <td id=\"L8517\" class=\"blob-num js-line-number\" data-line-number=\"8517\"></td>\n        <td id=\"LC8517\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8518\" class=\"blob-num js-line-number\" data-line-number=\"8518\"></td>\n        <td id=\"LC8518\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> qm <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8519\" class=\"blob-num js-line-number\" data-line-number=\"8519\"></td>\n        <td id=\"LC8519\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (qm <span class=\"pl-k\">!==</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8520\" class=\"blob-num js-line-number\" data-line-number=\"8520\"></td>\n        <td id=\"LC8520\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">substr</span>(qm);</td>\n      </tr>\n      <tr>\n        <td id=\"L8521\" class=\"blob-num js-line-number\" data-line-number=\"8521\"></td>\n        <td id=\"LC8521\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">query</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">substr</span>(qm <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8522\" class=\"blob-num js-line-number\" data-line-number=\"8522\"></td>\n        <td id=\"LC8522\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (parseQueryString) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8523\" class=\"blob-num js-line-number\" data-line-number=\"8523\"></td>\n        <td id=\"LC8523\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">query</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">querystring</span>.<span class=\"pl-c1\">parse</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">query</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8524\" class=\"blob-num js-line-number\" data-line-number=\"8524\"></td>\n        <td id=\"LC8524\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8525\" class=\"blob-num js-line-number\" data-line-number=\"8525\"></td>\n        <td id=\"LC8525\" class=\"blob-code blob-code-inner js-file-line\">    rest <span class=\"pl-k\">=</span> <span class=\"pl-smi\">rest</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-c1\">0</span>, qm);</td>\n      </tr>\n      <tr>\n        <td id=\"L8526\" class=\"blob-num js-line-number\" data-line-number=\"8526\"></td>\n        <td id=\"LC8526\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (parseQueryString) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8527\" class=\"blob-num js-line-number\" data-line-number=\"8527\"></td>\n        <td id=\"LC8527\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8528\" class=\"blob-num js-line-number\" data-line-number=\"8528\"></td>\n        <td id=\"LC8528\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">query</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L8529\" class=\"blob-num js-line-number\" data-line-number=\"8529\"></td>\n        <td id=\"LC8529\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8530\" class=\"blob-num js-line-number\" data-line-number=\"8530\"></td>\n        <td id=\"LC8530\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (rest) <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">=</span> rest;</td>\n      </tr>\n      <tr>\n        <td id=\"L8531\" class=\"blob-num js-line-number\" data-line-number=\"8531\"></td>\n        <td id=\"LC8531\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (slashedProtocol[lowerProto] <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8532\" class=\"blob-num js-line-number\" data-line-number=\"8532\"></td>\n        <td id=\"LC8532\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-c1\">pathname</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8533\" class=\"blob-num js-line-number\" data-line-number=\"8533\"></td>\n        <td id=\"LC8533\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8534\" class=\"blob-num js-line-number\" data-line-number=\"8534\"></td>\n        <td id=\"LC8534\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8535\" class=\"blob-num js-line-number\" data-line-number=\"8535\"></td>\n        <td id=\"LC8535\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8536\" class=\"blob-num js-line-number\" data-line-number=\"8536\"></td>\n        <td id=\"LC8536\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">||</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">search</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8537\" class=\"blob-num js-line-number\" data-line-number=\"8537\"></td>\n        <td id=\"LC8537\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> p <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8538\" class=\"blob-num js-line-number\" data-line-number=\"8538\"></td>\n        <td id=\"LC8538\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> s <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8539\" class=\"blob-num js-line-number\" data-line-number=\"8539\"></td>\n        <td id=\"LC8539\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> p <span class=\"pl-k\">+</span> s;</td>\n      </tr>\n      <tr>\n        <td id=\"L8540\" class=\"blob-num js-line-number\" data-line-number=\"8540\"></td>\n        <td id=\"LC8540\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8541\" class=\"blob-num js-line-number\" data-line-number=\"8541\"></td>\n        <td id=\"LC8541\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8542\" class=\"blob-num js-line-number\" data-line-number=\"8542\"></td>\n        <td id=\"LC8542\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">href</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">format</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8543\" class=\"blob-num js-line-number\" data-line-number=\"8543\"></td>\n        <td id=\"LC8543\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8544\" class=\"blob-num js-line-number\" data-line-number=\"8544\"></td>\n        <td id=\"LC8544\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8545\" class=\"blob-num js-line-number\" data-line-number=\"8545\"></td>\n        <td id=\"LC8545\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8546\" class=\"blob-num js-line-number\" data-line-number=\"8546\"></td>\n        <td id=\"LC8546\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">urlFormat</span>(<span class=\"pl-smi\">obj</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8547\" class=\"blob-num js-line-number\" data-line-number=\"8547\"></td>\n        <td id=\"LC8547\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isString</span>(obj)) obj <span class=\"pl-k\">=</span> <span class=\"pl-en\">urlParse</span>(obj);</td>\n      </tr>\n      <tr>\n        <td id=\"L8548\" class=\"blob-num js-line-number\" data-line-number=\"8548\"></td>\n        <td id=\"LC8548\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>(obj <span class=\"pl-k\">instanceof</span> Url)) <span class=\"pl-k\">return</span> <span class=\"pl-smi\">Url</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">format</span>.<span class=\"pl-c1\">call</span>(obj);</td>\n      </tr>\n      <tr>\n        <td id=\"L8549\" class=\"blob-num js-line-number\" data-line-number=\"8549\"></td>\n        <td id=\"LC8549\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">obj</span>.<span class=\"pl-en\">format</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8550\" class=\"blob-num js-line-number\" data-line-number=\"8550\"></td>\n        <td id=\"LC8550\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8551\" class=\"blob-num js-line-number\" data-line-number=\"8551\"></td>\n        <td id=\"LC8551\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8552\" class=\"blob-num js-line-number\" data-line-number=\"8552\"></td>\n        <td id=\"LC8552\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Url</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">format</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L8553\" class=\"blob-num js-line-number\" data-line-number=\"8553\"></td>\n        <td id=\"LC8553\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> auth <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">auth</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8554\" class=\"blob-num js-line-number\" data-line-number=\"8554\"></td>\n        <td id=\"LC8554\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (auth) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8555\" class=\"blob-num js-line-number\" data-line-number=\"8555\"></td>\n        <td id=\"LC8555\" class=\"blob-code blob-code-inner js-file-line\">    auth <span class=\"pl-k\">=</span> <span class=\"pl-c1\">encodeURIComponent</span>(auth);</td>\n      </tr>\n      <tr>\n        <td id=\"L8556\" class=\"blob-num js-line-number\" data-line-number=\"8556\"></td>\n        <td id=\"LC8556\" class=\"blob-code blob-code-inner js-file-line\">    auth <span class=\"pl-k\">=</span> <span class=\"pl-smi\">auth</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>%3A<span class=\"pl-pds\">/</span>i</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8557\" class=\"blob-num js-line-number\" data-line-number=\"8557\"></td>\n        <td id=\"LC8557\" class=\"blob-code blob-code-inner js-file-line\">    auth <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>@<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8558\" class=\"blob-num js-line-number\" data-line-number=\"8558\"></td>\n        <td id=\"LC8558\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8559\" class=\"blob-num js-line-number\" data-line-number=\"8559\"></td>\n        <td id=\"LC8559\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8560\" class=\"blob-num js-line-number\" data-line-number=\"8560\"></td>\n        <td id=\"LC8560\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> protocol <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8561\" class=\"blob-num js-line-number\" data-line-number=\"8561\"></td>\n        <td id=\"LC8561\" class=\"blob-code blob-code-inner js-file-line\">      pathname <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8562\" class=\"blob-num js-line-number\" data-line-number=\"8562\"></td>\n        <td id=\"LC8562\" class=\"blob-code blob-code-inner js-file-line\">      hash <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hash</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8563\" class=\"blob-num js-line-number\" data-line-number=\"8563\"></td>\n        <td id=\"LC8563\" class=\"blob-code blob-code-inner js-file-line\">      host <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L8564\" class=\"blob-num js-line-number\" data-line-number=\"8564\"></td>\n        <td id=\"LC8564\" class=\"blob-code blob-code-inner js-file-line\">      query <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8565\" class=\"blob-num js-line-number\" data-line-number=\"8565\"></td>\n        <td id=\"LC8565\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8566\" class=\"blob-num js-line-number\" data-line-number=\"8566\"></td>\n        <td id=\"LC8566\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">host</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8567\" class=\"blob-num js-line-number\" data-line-number=\"8567\"></td>\n        <td id=\"LC8567\" class=\"blob-code blob-code-inner js-file-line\">    host <span class=\"pl-k\">=</span> auth <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">host</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8568\" class=\"blob-num js-line-number\" data-line-number=\"8568\"></td>\n        <td id=\"LC8568\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8569\" class=\"blob-num js-line-number\" data-line-number=\"8569\"></td>\n        <td id=\"LC8569\" class=\"blob-code blob-code-inner js-file-line\">    host <span class=\"pl-k\">=</span> auth <span class=\"pl-k\">+</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">===</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">?</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8570\" class=\"blob-num js-line-number\" data-line-number=\"8570\"></td>\n        <td id=\"LC8570\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8571\" class=\"blob-num js-line-number\" data-line-number=\"8571\"></td>\n        <td id=\"LC8571\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8572\" class=\"blob-num js-line-number\" data-line-number=\"8572\"></td>\n        <td id=\"LC8572\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">port</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8573\" class=\"blob-num js-line-number\" data-line-number=\"8573\"></td>\n        <td id=\"LC8573\" class=\"blob-code blob-code-inner js-file-line\">      host <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">port</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8574\" class=\"blob-num js-line-number\" data-line-number=\"8574\"></td>\n        <td id=\"LC8574\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8575\" class=\"blob-num js-line-number\" data-line-number=\"8575\"></td>\n        <td id=\"LC8575\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8576\" class=\"blob-num js-line-number\" data-line-number=\"8576\"></td>\n        <td id=\"LC8576\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8577\" class=\"blob-num js-line-number\" data-line-number=\"8577\"></td>\n        <td id=\"LC8577\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">query</span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8578\" class=\"blob-num js-line-number\" data-line-number=\"8578\"></td>\n        <td id=\"LC8578\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">isObject</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">query</span>) <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8579\" class=\"blob-num js-line-number\" data-line-number=\"8579\"></td>\n        <td id=\"LC8579\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">query</span>).<span class=\"pl-c1\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8580\" class=\"blob-num js-line-number\" data-line-number=\"8580\"></td>\n        <td id=\"LC8580\" class=\"blob-code blob-code-inner js-file-line\">    query <span class=\"pl-k\">=</span> <span class=\"pl-smi\">querystring</span>.<span class=\"pl-en\">stringify</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">query</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8581\" class=\"blob-num js-line-number\" data-line-number=\"8581\"></td>\n        <td id=\"LC8581\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8582\" class=\"blob-num js-line-number\" data-line-number=\"8582\"></td>\n        <td id=\"LC8582\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8583\" class=\"blob-num js-line-number\" data-line-number=\"8583\"></td>\n        <td id=\"LC8583\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> search <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">||</span> (query <span class=\"pl-k\">&amp;&amp;</span> (<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> query)) <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8584\" class=\"blob-num js-line-number\" data-line-number=\"8584\"></td>\n        <td id=\"LC8584\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8585\" class=\"blob-num js-line-number\" data-line-number=\"8585\"></td>\n        <td id=\"LC8585\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (protocol <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">protocol</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>) <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span>) protocol <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8586\" class=\"blob-num js-line-number\" data-line-number=\"8586\"></td>\n        <td id=\"LC8586\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8587\" class=\"blob-num js-line-number\" data-line-number=\"8587\"></td>\n        <td id=\"LC8587\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">slashes</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8588\" class=\"blob-num js-line-number\" data-line-number=\"8588\"></td>\n        <td id=\"LC8588\" class=\"blob-code blob-code-inner js-file-line\">      (<span class=\"pl-k\">!</span>protocol <span class=\"pl-k\">||</span> slashedProtocol[protocol]) <span class=\"pl-k\">&amp;&amp;</span> host <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">false</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8589\" class=\"blob-num js-line-number\" data-line-number=\"8589\"></td>\n        <td id=\"LC8589\" class=\"blob-code blob-code-inner js-file-line\">    host <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>//<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> (host <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8590\" class=\"blob-num js-line-number\" data-line-number=\"8590\"></td>\n        <td id=\"LC8590\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (pathname <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">pathname</span>.<span class=\"pl-c1\">charAt</span>(<span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>) pathname <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> pathname;</td>\n      </tr>\n      <tr>\n        <td id=\"L8591\" class=\"blob-num js-line-number\" data-line-number=\"8591\"></td>\n        <td id=\"LC8591\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>host) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8592\" class=\"blob-num js-line-number\" data-line-number=\"8592\"></td>\n        <td id=\"LC8592\" class=\"blob-code blob-code-inner js-file-line\">    host <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8593\" class=\"blob-num js-line-number\" data-line-number=\"8593\"></td>\n        <td id=\"LC8593\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8594\" class=\"blob-num js-line-number\" data-line-number=\"8594\"></td>\n        <td id=\"LC8594\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8595\" class=\"blob-num js-line-number\" data-line-number=\"8595\"></td>\n        <td id=\"LC8595\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (hash <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">hash</span>.<span class=\"pl-c1\">charAt</span>(<span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#<span class=\"pl-pds\">&#39;</span></span>) hash <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> hash;</td>\n      </tr>\n      <tr>\n        <td id=\"L8596\" class=\"blob-num js-line-number\" data-line-number=\"8596\"></td>\n        <td id=\"LC8596\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (search <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">search</span>.<span class=\"pl-c1\">charAt</span>(<span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>) search <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> search;</td>\n      </tr>\n      <tr>\n        <td id=\"L8597\" class=\"blob-num js-line-number\" data-line-number=\"8597\"></td>\n        <td id=\"LC8597\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8598\" class=\"blob-num js-line-number\" data-line-number=\"8598\"></td>\n        <td id=\"LC8598\" class=\"blob-code blob-code-inner js-file-line\">  pathname <span class=\"pl-k\">=</span> <span class=\"pl-smi\">pathname</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-c1\">[?#]</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">match</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8599\" class=\"blob-num js-line-number\" data-line-number=\"8599\"></td>\n        <td id=\"LC8599\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">encodeURIComponent</span>(match);</td>\n      </tr>\n      <tr>\n        <td id=\"L8600\" class=\"blob-num js-line-number\" data-line-number=\"8600\"></td>\n        <td id=\"LC8600\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L8601\" class=\"blob-num js-line-number\" data-line-number=\"8601\"></td>\n        <td id=\"LC8601\" class=\"blob-code blob-code-inner js-file-line\">  search <span class=\"pl-k\">=</span> <span class=\"pl-smi\">search</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%23<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8602\" class=\"blob-num js-line-number\" data-line-number=\"8602\"></td>\n        <td id=\"LC8602\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8603\" class=\"blob-num js-line-number\" data-line-number=\"8603\"></td>\n        <td id=\"LC8603\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> protocol <span class=\"pl-k\">+</span> host <span class=\"pl-k\">+</span> pathname <span class=\"pl-k\">+</span> search <span class=\"pl-k\">+</span> hash;</td>\n      </tr>\n      <tr>\n        <td id=\"L8604\" class=\"blob-num js-line-number\" data-line-number=\"8604\"></td>\n        <td id=\"LC8604\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8605\" class=\"blob-num js-line-number\" data-line-number=\"8605\"></td>\n        <td id=\"LC8605\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8606\" class=\"blob-num js-line-number\" data-line-number=\"8606\"></td>\n        <td id=\"LC8606\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">urlResolve</span>(<span class=\"pl-smi\">source</span>, <span class=\"pl-smi\">relative</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8607\" class=\"blob-num js-line-number\" data-line-number=\"8607\"></td>\n        <td id=\"LC8607\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">urlParse</span>(source, <span class=\"pl-c1\">false</span>, <span class=\"pl-c1\">true</span>).<span class=\"pl-en\">resolve</span>(relative);</td>\n      </tr>\n      <tr>\n        <td id=\"L8608\" class=\"blob-num js-line-number\" data-line-number=\"8608\"></td>\n        <td id=\"LC8608\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8609\" class=\"blob-num js-line-number\" data-line-number=\"8609\"></td>\n        <td id=\"LC8609\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8610\" class=\"blob-num js-line-number\" data-line-number=\"8610\"></td>\n        <td id=\"LC8610\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Url</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">resolve</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">relative</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8611\" class=\"blob-num js-line-number\" data-line-number=\"8611\"></td>\n        <td id=\"LC8611\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">resolveObject</span>(<span class=\"pl-en\">urlParse</span>(relative, <span class=\"pl-c1\">false</span>, <span class=\"pl-c1\">true</span>)).<span class=\"pl-en\">format</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8612\" class=\"blob-num js-line-number\" data-line-number=\"8612\"></td>\n        <td id=\"LC8612\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8613\" class=\"blob-num js-line-number\" data-line-number=\"8613\"></td>\n        <td id=\"LC8613\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8614\" class=\"blob-num js-line-number\" data-line-number=\"8614\"></td>\n        <td id=\"LC8614\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">urlResolveObject</span>(<span class=\"pl-smi\">source</span>, <span class=\"pl-smi\">relative</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8615\" class=\"blob-num js-line-number\" data-line-number=\"8615\"></td>\n        <td id=\"LC8615\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>source) <span class=\"pl-k\">return</span> relative;</td>\n      </tr>\n      <tr>\n        <td id=\"L8616\" class=\"blob-num js-line-number\" data-line-number=\"8616\"></td>\n        <td id=\"LC8616\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">urlParse</span>(source, <span class=\"pl-c1\">false</span>, <span class=\"pl-c1\">true</span>).<span class=\"pl-en\">resolveObject</span>(relative);</td>\n      </tr>\n      <tr>\n        <td id=\"L8617\" class=\"blob-num js-line-number\" data-line-number=\"8617\"></td>\n        <td id=\"LC8617\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8618\" class=\"blob-num js-line-number\" data-line-number=\"8618\"></td>\n        <td id=\"LC8618\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8619\" class=\"blob-num js-line-number\" data-line-number=\"8619\"></td>\n        <td id=\"LC8619\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Url</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">resolveObject</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">relative</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8620\" class=\"blob-num js-line-number\" data-line-number=\"8620\"></td>\n        <td id=\"LC8620\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isString</span>(relative)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8621\" class=\"blob-num js-line-number\" data-line-number=\"8621\"></td>\n        <td id=\"LC8621\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> rel <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Url</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8622\" class=\"blob-num js-line-number\" data-line-number=\"8622\"></td>\n        <td id=\"LC8622\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">rel</span>.<span class=\"pl-c1\">parse</span>(relative, <span class=\"pl-c1\">false</span>, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8623\" class=\"blob-num js-line-number\" data-line-number=\"8623\"></td>\n        <td id=\"LC8623\" class=\"blob-code blob-code-inner js-file-line\">    relative <span class=\"pl-k\">=</span> rel;</td>\n      </tr>\n      <tr>\n        <td id=\"L8624\" class=\"blob-num js-line-number\" data-line-number=\"8624\"></td>\n        <td id=\"LC8624\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8625\" class=\"blob-num js-line-number\" data-line-number=\"8625\"></td>\n        <td id=\"LC8625\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8626\" class=\"blob-num js-line-number\" data-line-number=\"8626\"></td>\n        <td id=\"LC8626\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Url</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8627\" class=\"blob-num js-line-number\" data-line-number=\"8627\"></td>\n        <td id=\"LC8627\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(<span class=\"pl-v\">this</span>).<span class=\"pl-en\">forEach</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">k</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8628\" class=\"blob-num js-line-number\" data-line-number=\"8628\"></td>\n        <td id=\"LC8628\" class=\"blob-code blob-code-inner js-file-line\">    result[k] <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>[k];</td>\n      </tr>\n      <tr>\n        <td id=\"L8629\" class=\"blob-num js-line-number\" data-line-number=\"8629\"></td>\n        <td id=\"LC8629\" class=\"blob-code blob-code-inner js-file-line\">  }, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8630\" class=\"blob-num js-line-number\" data-line-number=\"8630\"></td>\n        <td id=\"LC8630\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8631\" class=\"blob-num js-line-number\" data-line-number=\"8631\"></td>\n        <td id=\"LC8631\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">hash</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">hash</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8632\" class=\"blob-num js-line-number\" data-line-number=\"8632\"></td>\n        <td id=\"LC8632\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8633\" class=\"blob-num js-line-number\" data-line-number=\"8633\"></td>\n        <td id=\"LC8633\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">href</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8634\" class=\"blob-num js-line-number\" data-line-number=\"8634\"></td>\n        <td id=\"LC8634\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">href</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-en\">format</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8635\" class=\"blob-num js-line-number\" data-line-number=\"8635\"></td>\n        <td id=\"LC8635\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L8636\" class=\"blob-num js-line-number\" data-line-number=\"8636\"></td>\n        <td id=\"LC8636\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8637\" class=\"blob-num js-line-number\" data-line-number=\"8637\"></td>\n        <td id=\"LC8637\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8638\" class=\"blob-num js-line-number\" data-line-number=\"8638\"></td>\n        <td id=\"LC8638\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">slashes</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">protocol</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8639\" class=\"blob-num js-line-number\" data-line-number=\"8639\"></td>\n        <td id=\"LC8639\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(relative).<span class=\"pl-en\">forEach</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">k</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8640\" class=\"blob-num js-line-number\" data-line-number=\"8640\"></td>\n        <td id=\"LC8640\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (k <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>protocol<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L8641\" class=\"blob-num js-line-number\" data-line-number=\"8641\"></td>\n        <td id=\"LC8641\" class=\"blob-code blob-code-inner js-file-line\">        result[k] <span class=\"pl-k\">=</span> relative[k];</td>\n      </tr>\n      <tr>\n        <td id=\"L8642\" class=\"blob-num js-line-number\" data-line-number=\"8642\"></td>\n        <td id=\"LC8642\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L8643\" class=\"blob-num js-line-number\" data-line-number=\"8643\"></td>\n        <td id=\"LC8643\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8644\" class=\"blob-num js-line-number\" data-line-number=\"8644\"></td>\n        <td id=\"LC8644\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (slashedProtocol[<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">protocol</span>] <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8645\" class=\"blob-num js-line-number\" data-line-number=\"8645\"></td>\n        <td id=\"LC8645\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8646\" class=\"blob-num js-line-number\" data-line-number=\"8646\"></td>\n        <td id=\"LC8646\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8647\" class=\"blob-num js-line-number\" data-line-number=\"8647\"></td>\n        <td id=\"LC8647\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8648\" class=\"blob-num js-line-number\" data-line-number=\"8648\"></td>\n        <td id=\"LC8648\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8649\" class=\"blob-num js-line-number\" data-line-number=\"8649\"></td>\n        <td id=\"LC8649\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">href</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-en\">format</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8650\" class=\"blob-num js-line-number\" data-line-number=\"8650\"></td>\n        <td id=\"LC8650\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L8651\" class=\"blob-num js-line-number\" data-line-number=\"8651\"></td>\n        <td id=\"LC8651\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8652\" class=\"blob-num js-line-number\" data-line-number=\"8652\"></td>\n        <td id=\"LC8652\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8653\" class=\"blob-num js-line-number\" data-line-number=\"8653\"></td>\n        <td id=\"LC8653\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">!==</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">protocol</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8654\" class=\"blob-num js-line-number\" data-line-number=\"8654\"></td>\n        <td id=\"LC8654\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>slashedProtocol[<span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">protocol</span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8655\" class=\"blob-num js-line-number\" data-line-number=\"8655\"></td>\n        <td id=\"LC8655\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(relative).<span class=\"pl-en\">forEach</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">k</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8656\" class=\"blob-num js-line-number\" data-line-number=\"8656\"></td>\n        <td id=\"LC8656\" class=\"blob-code blob-code-inner js-file-line\">        result[k] <span class=\"pl-k\">=</span> relative[k];</td>\n      </tr>\n      <tr>\n        <td id=\"L8657\" class=\"blob-num js-line-number\" data-line-number=\"8657\"></td>\n        <td id=\"LC8657\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L8658\" class=\"blob-num js-line-number\" data-line-number=\"8658\"></td>\n        <td id=\"LC8658\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">href</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-en\">format</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8659\" class=\"blob-num js-line-number\" data-line-number=\"8659\"></td>\n        <td id=\"LC8659\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L8660\" class=\"blob-num js-line-number\" data-line-number=\"8660\"></td>\n        <td id=\"LC8660\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8661\" class=\"blob-num js-line-number\" data-line-number=\"8661\"></td>\n        <td id=\"LC8661\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8662\" class=\"blob-num js-line-number\" data-line-number=\"8662\"></td>\n        <td id=\"LC8662\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">protocol</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8663\" class=\"blob-num js-line-number\" data-line-number=\"8663\"></td>\n        <td id=\"LC8663\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>hostlessProtocol[<span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">protocol</span>]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8664\" class=\"blob-num js-line-number\" data-line-number=\"8664\"></td>\n        <td id=\"LC8664\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> relPath <span class=\"pl-k\">=</span> (<span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8665\" class=\"blob-num js-line-number\" data-line-number=\"8665\"></td>\n        <td id=\"LC8665\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">while</span> (<span class=\"pl-smi\">relPath</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>(<span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relPath</span>.<span class=\"pl-c1\">shift</span>()));</td>\n      </tr>\n      <tr>\n        <td id=\"L8666\" class=\"blob-num js-line-number\" data-line-number=\"8666\"></td>\n        <td id=\"LC8666\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span>) <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8667\" class=\"blob-num js-line-number\" data-line-number=\"8667\"></td>\n        <td id=\"LC8667\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">hostname</span>) <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8668\" class=\"blob-num js-line-number\" data-line-number=\"8668\"></td>\n        <td id=\"LC8668\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (relPath[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-smi\">relPath</span>.<span class=\"pl-c1\">unshift</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8669\" class=\"blob-num js-line-number\" data-line-number=\"8669\"></td>\n        <td id=\"LC8669\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">relPath</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">2</span>) <span class=\"pl-smi\">relPath</span>.<span class=\"pl-c1\">unshift</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8670\" class=\"blob-num js-line-number\" data-line-number=\"8670\"></td>\n        <td id=\"LC8670\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relPath</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8671\" class=\"blob-num js-line-number\" data-line-number=\"8671\"></td>\n        <td id=\"LC8671\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8672\" class=\"blob-num js-line-number\" data-line-number=\"8672\"></td>\n        <td id=\"LC8672\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">pathname</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8673\" class=\"blob-num js-line-number\" data-line-number=\"8673\"></td>\n        <td id=\"LC8673\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8674\" class=\"blob-num js-line-number\" data-line-number=\"8674\"></td>\n        <td id=\"LC8674\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">search</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8675\" class=\"blob-num js-line-number\" data-line-number=\"8675\"></td>\n        <td id=\"LC8675\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">query</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">query</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8676\" class=\"blob-num js-line-number\" data-line-number=\"8676\"></td>\n        <td id=\"LC8676\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8677\" class=\"blob-num js-line-number\" data-line-number=\"8677\"></td>\n        <td id=\"LC8677\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">auth</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">auth</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8678\" class=\"blob-num js-line-number\" data-line-number=\"8678\"></td>\n        <td id=\"LC8678\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8679\" class=\"blob-num js-line-number\" data-line-number=\"8679\"></td>\n        <td id=\"LC8679\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">port</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">port</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8680\" class=\"blob-num js-line-number\" data-line-number=\"8680\"></td>\n        <td id=\"LC8680\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8681\" class=\"blob-num js-line-number\" data-line-number=\"8681\"></td>\n        <td id=\"LC8681\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> p <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8682\" class=\"blob-num js-line-number\" data-line-number=\"8682\"></td>\n        <td id=\"LC8682\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> s <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8683\" class=\"blob-num js-line-number\" data-line-number=\"8683\"></td>\n        <td id=\"LC8683\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> p <span class=\"pl-k\">+</span> s;</td>\n      </tr>\n      <tr>\n        <td id=\"L8684\" class=\"blob-num js-line-number\" data-line-number=\"8684\"></td>\n        <td id=\"LC8684\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8685\" class=\"blob-num js-line-number\" data-line-number=\"8685\"></td>\n        <td id=\"LC8685\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">slashes</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">slashes</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">slashes</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8686\" class=\"blob-num js-line-number\" data-line-number=\"8686\"></td>\n        <td id=\"LC8686\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">href</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-en\">format</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8687\" class=\"blob-num js-line-number\" data-line-number=\"8687\"></td>\n        <td id=\"LC8687\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L8688\" class=\"blob-num js-line-number\" data-line-number=\"8688\"></td>\n        <td id=\"LC8688\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8689\" class=\"blob-num js-line-number\" data-line-number=\"8689\"></td>\n        <td id=\"LC8689\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8690\" class=\"blob-num js-line-number\" data-line-number=\"8690\"></td>\n        <td id=\"LC8690\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> isSourceAbs <span class=\"pl-k\">=</span> (<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span>.<span class=\"pl-c1\">charAt</span>(<span class=\"pl-c1\">0</span>) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L8691\" class=\"blob-num js-line-number\" data-line-number=\"8691\"></td>\n        <td id=\"LC8691\" class=\"blob-code blob-code-inner js-file-line\">      isRelAbs <span class=\"pl-k\">=</span> (</td>\n      </tr>\n      <tr>\n        <td id=\"L8692\" class=\"blob-num js-line-number\" data-line-number=\"8692\"></td>\n        <td id=\"LC8692\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8693\" class=\"blob-num js-line-number\" data-line-number=\"8693\"></td>\n        <td id=\"LC8693\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">pathname</span>.<span class=\"pl-c1\">charAt</span>(<span class=\"pl-c1\">0</span>) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L8694\" class=\"blob-num js-line-number\" data-line-number=\"8694\"></td>\n        <td id=\"LC8694\" class=\"blob-code blob-code-inner js-file-line\">      ),</td>\n      </tr>\n      <tr>\n        <td id=\"L8695\" class=\"blob-num js-line-number\" data-line-number=\"8695\"></td>\n        <td id=\"LC8695\" class=\"blob-code blob-code-inner js-file-line\">      mustEndAbs <span class=\"pl-k\">=</span> (isRelAbs <span class=\"pl-k\">||</span> isSourceAbs <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8696\" class=\"blob-num js-line-number\" data-line-number=\"8696\"></td>\n        <td id=\"LC8696\" class=\"blob-code blob-code-inner js-file-line\">                    (<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">pathname</span>)),</td>\n      </tr>\n      <tr>\n        <td id=\"L8697\" class=\"blob-num js-line-number\" data-line-number=\"8697\"></td>\n        <td id=\"LC8697\" class=\"blob-code blob-code-inner js-file-line\">      removeAllDots <span class=\"pl-k\">=</span> mustEndAbs,</td>\n      </tr>\n      <tr>\n        <td id=\"L8698\" class=\"blob-num js-line-number\" data-line-number=\"8698\"></td>\n        <td id=\"LC8698\" class=\"blob-code blob-code-inner js-file-line\">      srcPath <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">||</span> [],</td>\n      </tr>\n      <tr>\n        <td id=\"L8699\" class=\"blob-num js-line-number\" data-line-number=\"8699\"></td>\n        <td id=\"LC8699\" class=\"blob-code blob-code-inner js-file-line\">      relPath <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">pathname</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">||</span> [],</td>\n      </tr>\n      <tr>\n        <td id=\"L8700\" class=\"blob-num js-line-number\" data-line-number=\"8700\"></td>\n        <td id=\"LC8700\" class=\"blob-code blob-code-inner js-file-line\">      psychotic <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">protocol</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>slashedProtocol[<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">protocol</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L8701\" class=\"blob-num js-line-number\" data-line-number=\"8701\"></td>\n        <td id=\"LC8701\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8702\" class=\"blob-num js-line-number\" data-line-number=\"8702\"></td>\n        <td id=\"LC8702\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (psychotic) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8703\" class=\"blob-num js-line-number\" data-line-number=\"8703\"></td>\n        <td id=\"LC8703\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8704\" class=\"blob-num js-line-number\" data-line-number=\"8704\"></td>\n        <td id=\"LC8704\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">port</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8705\" class=\"blob-num js-line-number\" data-line-number=\"8705\"></td>\n        <td id=\"LC8705\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8706\" class=\"blob-num js-line-number\" data-line-number=\"8706\"></td>\n        <td id=\"LC8706\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (srcPath[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) srcPath[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8707\" class=\"blob-num js-line-number\" data-line-number=\"8707\"></td>\n        <td id=\"LC8707\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">else</span> <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">unshift</span>(<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8708\" class=\"blob-num js-line-number\" data-line-number=\"8708\"></td>\n        <td id=\"LC8708\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8709\" class=\"blob-num js-line-number\" data-line-number=\"8709\"></td>\n        <td id=\"LC8709\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8710\" class=\"blob-num js-line-number\" data-line-number=\"8710\"></td>\n        <td id=\"LC8710\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">protocol</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8711\" class=\"blob-num js-line-number\" data-line-number=\"8711\"></td>\n        <td id=\"LC8711\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8712\" class=\"blob-num js-line-number\" data-line-number=\"8712\"></td>\n        <td id=\"LC8712\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">port</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8713\" class=\"blob-num js-line-number\" data-line-number=\"8713\"></td>\n        <td id=\"LC8713\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8714\" class=\"blob-num js-line-number\" data-line-number=\"8714\"></td>\n        <td id=\"LC8714\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (relPath[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) relPath[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8715\" class=\"blob-num js-line-number\" data-line-number=\"8715\"></td>\n        <td id=\"LC8715\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">else</span> <span class=\"pl-smi\">relPath</span>.<span class=\"pl-c1\">unshift</span>(<span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8716\" class=\"blob-num js-line-number\" data-line-number=\"8716\"></td>\n        <td id=\"LC8716\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L8717\" class=\"blob-num js-line-number\" data-line-number=\"8717\"></td>\n        <td id=\"LC8717\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8718\" class=\"blob-num js-line-number\" data-line-number=\"8718\"></td>\n        <td id=\"LC8718\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8719\" class=\"blob-num js-line-number\" data-line-number=\"8719\"></td>\n        <td id=\"LC8719\" class=\"blob-code blob-code-inner js-file-line\">    mustEndAbs <span class=\"pl-k\">=</span> mustEndAbs <span class=\"pl-k\">&amp;&amp;</span> (relPath[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> srcPath[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8720\" class=\"blob-num js-line-number\" data-line-number=\"8720\"></td>\n        <td id=\"LC8720\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8721\" class=\"blob-num js-line-number\" data-line-number=\"8721\"></td>\n        <td id=\"LC8721\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8722\" class=\"blob-num js-line-number\" data-line-number=\"8722\"></td>\n        <td id=\"LC8722\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (isRelAbs) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8723\" class=\"blob-num js-line-number\" data-line-number=\"8723\"></td>\n        <td id=\"LC8723\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> (<span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">?</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8724\" class=\"blob-num js-line-number\" data-line-number=\"8724\"></td>\n        <td id=\"LC8724\" class=\"blob-code blob-code-inner js-file-line\">                  <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">:</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8725\" class=\"blob-num js-line-number\" data-line-number=\"8725\"></td>\n        <td id=\"LC8725\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> (<span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">?</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8726\" class=\"blob-num js-line-number\" data-line-number=\"8726\"></td>\n        <td id=\"LC8726\" class=\"blob-code blob-code-inner js-file-line\">                      <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">:</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">hostname</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8727\" class=\"blob-num js-line-number\" data-line-number=\"8727\"></td>\n        <td id=\"LC8727\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">search</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8728\" class=\"blob-num js-line-number\" data-line-number=\"8728\"></td>\n        <td id=\"LC8728\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">query</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">query</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8729\" class=\"blob-num js-line-number\" data-line-number=\"8729\"></td>\n        <td id=\"LC8729\" class=\"blob-code blob-code-inner js-file-line\">    srcPath <span class=\"pl-k\">=</span> relPath;</td>\n      </tr>\n      <tr>\n        <td id=\"L8730\" class=\"blob-num js-line-number\" data-line-number=\"8730\"></td>\n        <td id=\"LC8730\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">relPath</span>.<span class=\"pl-c1\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8731\" class=\"blob-num js-line-number\" data-line-number=\"8731\"></td>\n        <td id=\"LC8731\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>srcPath) srcPath <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L8732\" class=\"blob-num js-line-number\" data-line-number=\"8732\"></td>\n        <td id=\"LC8732\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">pop</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8733\" class=\"blob-num js-line-number\" data-line-number=\"8733\"></td>\n        <td id=\"LC8733\" class=\"blob-code blob-code-inner js-file-line\">    srcPath <span class=\"pl-k\">=</span> <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">concat</span>(relPath);</td>\n      </tr>\n      <tr>\n        <td id=\"L8734\" class=\"blob-num js-line-number\" data-line-number=\"8734\"></td>\n        <td id=\"LC8734\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">search</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8735\" class=\"blob-num js-line-number\" data-line-number=\"8735\"></td>\n        <td id=\"LC8735\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">query</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">query</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8736\" class=\"blob-num js-line-number\" data-line-number=\"8736\"></td>\n        <td id=\"LC8736\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isNullOrUndefined</span>(<span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">search</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8737\" class=\"blob-num js-line-number\" data-line-number=\"8737\"></td>\n        <td id=\"LC8737\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (psychotic) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8738\" class=\"blob-num js-line-number\" data-line-number=\"8738\"></td>\n        <td id=\"LC8738\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">shift</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8739\" class=\"blob-num js-line-number\" data-line-number=\"8739\"></td>\n        <td id=\"LC8739\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> authInHost <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>@<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">?</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8740\" class=\"blob-num js-line-number\" data-line-number=\"8740\"></td>\n        <td id=\"LC8740\" class=\"blob-code blob-code-inner js-file-line\">                       <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>@<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8741\" class=\"blob-num js-line-number\" data-line-number=\"8741\"></td>\n        <td id=\"LC8741\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (authInHost) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8742\" class=\"blob-num js-line-number\" data-line-number=\"8742\"></td>\n        <td id=\"LC8742\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">auth</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">authInHost</span>.<span class=\"pl-c1\">shift</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8743\" class=\"blob-num js-line-number\" data-line-number=\"8743\"></td>\n        <td id=\"LC8743\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">authInHost</span>.<span class=\"pl-c1\">shift</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8744\" class=\"blob-num js-line-number\" data-line-number=\"8744\"></td>\n        <td id=\"LC8744\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L8745\" class=\"blob-num js-line-number\" data-line-number=\"8745\"></td>\n        <td id=\"LC8745\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8746\" class=\"blob-num js-line-number\" data-line-number=\"8746\"></td>\n        <td id=\"LC8746\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">search</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8747\" class=\"blob-num js-line-number\" data-line-number=\"8747\"></td>\n        <td id=\"LC8747\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">query</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">query</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8748\" class=\"blob-num js-line-number\" data-line-number=\"8748\"></td>\n        <td id=\"LC8748\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isNull</span>(<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span>) <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-en\">isNull</span>(<span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8749\" class=\"blob-num js-line-number\" data-line-number=\"8749\"></td>\n        <td id=\"LC8749\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> (<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8750\" class=\"blob-num js-line-number\" data-line-number=\"8750\"></td>\n        <td id=\"LC8750\" class=\"blob-code blob-code-inner js-file-line\">                    (<span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8751\" class=\"blob-num js-line-number\" data-line-number=\"8751\"></td>\n        <td id=\"LC8751\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8752\" class=\"blob-num js-line-number\" data-line-number=\"8752\"></td>\n        <td id=\"LC8752\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">href</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-en\">format</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8753\" class=\"blob-num js-line-number\" data-line-number=\"8753\"></td>\n        <td id=\"LC8753\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L8754\" class=\"blob-num js-line-number\" data-line-number=\"8754\"></td>\n        <td id=\"LC8754\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8755\" class=\"blob-num js-line-number\" data-line-number=\"8755\"></td>\n        <td id=\"LC8755\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8756\" class=\"blob-num js-line-number\" data-line-number=\"8756\"></td>\n        <td id=\"LC8756\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8757\" class=\"blob-num js-line-number\" data-line-number=\"8757\"></td>\n        <td id=\"LC8757\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8758\" class=\"blob-num js-line-number\" data-line-number=\"8758\"></td>\n        <td id=\"LC8758\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8759\" class=\"blob-num js-line-number\" data-line-number=\"8759\"></td>\n        <td id=\"LC8759\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8760\" class=\"blob-num js-line-number\" data-line-number=\"8760\"></td>\n        <td id=\"LC8760\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8761\" class=\"blob-num js-line-number\" data-line-number=\"8761\"></td>\n        <td id=\"LC8761\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8762\" class=\"blob-num js-line-number\" data-line-number=\"8762\"></td>\n        <td id=\"LC8762\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8763\" class=\"blob-num js-line-number\" data-line-number=\"8763\"></td>\n        <td id=\"LC8763\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">href</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-en\">format</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8764\" class=\"blob-num js-line-number\" data-line-number=\"8764\"></td>\n        <td id=\"LC8764\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L8765\" class=\"blob-num js-line-number\" data-line-number=\"8765\"></td>\n        <td id=\"LC8765\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8766\" class=\"blob-num js-line-number\" data-line-number=\"8766\"></td>\n        <td id=\"LC8766\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8767\" class=\"blob-num js-line-number\" data-line-number=\"8767\"></td>\n        <td id=\"LC8767\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> last <span class=\"pl-k\">=</span> <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>)[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L8768\" class=\"blob-num js-line-number\" data-line-number=\"8768\"></td>\n        <td id=\"LC8768\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> hasTrailingSlash <span class=\"pl-k\">=</span> (</td>\n      </tr>\n      <tr>\n        <td id=\"L8769\" class=\"blob-num js-line-number\" data-line-number=\"8769\"></td>\n        <td id=\"LC8769\" class=\"blob-code blob-code-inner js-file-line\">      (<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-c1\">host</span>) <span class=\"pl-k\">&amp;&amp;</span> (last <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> last <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>..<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8770\" class=\"blob-num js-line-number\" data-line-number=\"8770\"></td>\n        <td id=\"LC8770\" class=\"blob-code blob-code-inner js-file-line\">      last <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8771\" class=\"blob-num js-line-number\" data-line-number=\"8771\"></td>\n        <td id=\"LC8771\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8772\" class=\"blob-num js-line-number\" data-line-number=\"8772\"></td>\n        <td id=\"LC8772\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> up <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8773\" class=\"blob-num js-line-number\" data-line-number=\"8773\"></td>\n        <td id=\"LC8773\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>; i<span class=\"pl-k\">--</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8774\" class=\"blob-num js-line-number\" data-line-number=\"8774\"></td>\n        <td id=\"LC8774\" class=\"blob-code blob-code-inner js-file-line\">    last <span class=\"pl-k\">=</span> srcPath[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L8775\" class=\"blob-num js-line-number\" data-line-number=\"8775\"></td>\n        <td id=\"LC8775\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (last <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>.<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8776\" class=\"blob-num js-line-number\" data-line-number=\"8776\"></td>\n        <td id=\"LC8776\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">splice</span>(i, <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8777\" class=\"blob-num js-line-number\" data-line-number=\"8777\"></td>\n        <td id=\"LC8777\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (last <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>..<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8778\" class=\"blob-num js-line-number\" data-line-number=\"8778\"></td>\n        <td id=\"LC8778\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">splice</span>(i, <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8779\" class=\"blob-num js-line-number\" data-line-number=\"8779\"></td>\n        <td id=\"LC8779\" class=\"blob-code blob-code-inner js-file-line\">      up<span class=\"pl-k\">++</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8780\" class=\"blob-num js-line-number\" data-line-number=\"8780\"></td>\n        <td id=\"LC8780\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (up) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8781\" class=\"blob-num js-line-number\" data-line-number=\"8781\"></td>\n        <td id=\"LC8781\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">splice</span>(i, <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8782\" class=\"blob-num js-line-number\" data-line-number=\"8782\"></td>\n        <td id=\"LC8782\" class=\"blob-code blob-code-inner js-file-line\">      up<span class=\"pl-k\">--</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8783\" class=\"blob-num js-line-number\" data-line-number=\"8783\"></td>\n        <td id=\"LC8783\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8784\" class=\"blob-num js-line-number\" data-line-number=\"8784\"></td>\n        <td id=\"LC8784\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8785\" class=\"blob-num js-line-number\" data-line-number=\"8785\"></td>\n        <td id=\"LC8785\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8786\" class=\"blob-num js-line-number\" data-line-number=\"8786\"></td>\n        <td id=\"LC8786\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>mustEndAbs <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>removeAllDots) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8787\" class=\"blob-num js-line-number\" data-line-number=\"8787\"></td>\n        <td id=\"LC8787\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (; up<span class=\"pl-k\">--</span>; up) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8788\" class=\"blob-num js-line-number\" data-line-number=\"8788\"></td>\n        <td id=\"LC8788\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">unshift</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>..<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8789\" class=\"blob-num js-line-number\" data-line-number=\"8789\"></td>\n        <td id=\"LC8789\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8790\" class=\"blob-num js-line-number\" data-line-number=\"8790\"></td>\n        <td id=\"LC8790\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8791\" class=\"blob-num js-line-number\" data-line-number=\"8791\"></td>\n        <td id=\"LC8791\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8792\" class=\"blob-num js-line-number\" data-line-number=\"8792\"></td>\n        <td id=\"LC8792\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (mustEndAbs <span class=\"pl-k\">&amp;&amp;</span> srcPath[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8793\" class=\"blob-num js-line-number\" data-line-number=\"8793\"></td>\n        <td id=\"LC8793\" class=\"blob-code blob-code-inner js-file-line\">      (<span class=\"pl-k\">!</span>srcPath[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">||</span> srcPath[<span class=\"pl-c1\">0</span>].<span class=\"pl-c1\">charAt</span>(<span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8794\" class=\"blob-num js-line-number\" data-line-number=\"8794\"></td>\n        <td id=\"LC8794\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">unshift</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8795\" class=\"blob-num js-line-number\" data-line-number=\"8795\"></td>\n        <td id=\"LC8795\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8796\" class=\"blob-num js-line-number\" data-line-number=\"8796\"></td>\n        <td id=\"LC8796\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8797\" class=\"blob-num js-line-number\" data-line-number=\"8797\"></td>\n        <td id=\"LC8797\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (hasTrailingSlash <span class=\"pl-k\">&amp;&amp;</span> (<span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">substr</span>(<span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>) <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8798\" class=\"blob-num js-line-number\" data-line-number=\"8798\"></td>\n        <td id=\"LC8798\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8799\" class=\"blob-num js-line-number\" data-line-number=\"8799\"></td>\n        <td id=\"LC8799\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8800\" class=\"blob-num js-line-number\" data-line-number=\"8800\"></td>\n        <td id=\"LC8800\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8801\" class=\"blob-num js-line-number\" data-line-number=\"8801\"></td>\n        <td id=\"LC8801\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> isAbsolute <span class=\"pl-k\">=</span> srcPath[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8802\" class=\"blob-num js-line-number\" data-line-number=\"8802\"></td>\n        <td id=\"LC8802\" class=\"blob-code blob-code-inner js-file-line\">      (srcPath[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">&amp;&amp;</span> srcPath[<span class=\"pl-c1\">0</span>].<span class=\"pl-c1\">charAt</span>(<span class=\"pl-c1\">0</span>) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8803\" class=\"blob-num js-line-number\" data-line-number=\"8803\"></td>\n        <td id=\"LC8803\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8804\" class=\"blob-num js-line-number\" data-line-number=\"8804\"></td>\n        <td id=\"LC8804\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (psychotic) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8805\" class=\"blob-num js-line-number\" data-line-number=\"8805\"></td>\n        <td id=\"LC8805\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> isAbsolute <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8806\" class=\"blob-num js-line-number\" data-line-number=\"8806\"></td>\n        <td id=\"LC8806\" class=\"blob-code blob-code-inner js-file-line\">                                    <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">shift</span>() <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8807\" class=\"blob-num js-line-number\" data-line-number=\"8807\"></td>\n        <td id=\"LC8807\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> authInHost <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>@<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">?</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8808\" class=\"blob-num js-line-number\" data-line-number=\"8808\"></td>\n        <td id=\"LC8808\" class=\"blob-code blob-code-inner js-file-line\">                     <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>@<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8809\" class=\"blob-num js-line-number\" data-line-number=\"8809\"></td>\n        <td id=\"LC8809\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (authInHost) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8810\" class=\"blob-num js-line-number\" data-line-number=\"8810\"></td>\n        <td id=\"LC8810\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">auth</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">authInHost</span>.<span class=\"pl-c1\">shift</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8811\" class=\"blob-num js-line-number\" data-line-number=\"8811\"></td>\n        <td id=\"LC8811\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">authInHost</span>.<span class=\"pl-c1\">shift</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8812\" class=\"blob-num js-line-number\" data-line-number=\"8812\"></td>\n        <td id=\"LC8812\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8813\" class=\"blob-num js-line-number\" data-line-number=\"8813\"></td>\n        <td id=\"LC8813\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8814\" class=\"blob-num js-line-number\" data-line-number=\"8814\"></td>\n        <td id=\"LC8814\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8815\" class=\"blob-num js-line-number\" data-line-number=\"8815\"></td>\n        <td id=\"LC8815\" class=\"blob-code blob-code-inner js-file-line\">  mustEndAbs <span class=\"pl-k\">=</span> mustEndAbs <span class=\"pl-k\">||</span> (<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">host</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">length</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8816\" class=\"blob-num js-line-number\" data-line-number=\"8816\"></td>\n        <td id=\"LC8816\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8817\" class=\"blob-num js-line-number\" data-line-number=\"8817\"></td>\n        <td id=\"LC8817\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (mustEndAbs <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>isAbsolute) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8818\" class=\"blob-num js-line-number\" data-line-number=\"8818\"></td>\n        <td id=\"LC8818\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">unshift</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8819\" class=\"blob-num js-line-number\" data-line-number=\"8819\"></td>\n        <td id=\"LC8819\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8820\" class=\"blob-num js-line-number\" data-line-number=\"8820\"></td>\n        <td id=\"LC8820\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8821\" class=\"blob-num js-line-number\" data-line-number=\"8821\"></td>\n        <td id=\"LC8821\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8822\" class=\"blob-num js-line-number\" data-line-number=\"8822\"></td>\n        <td id=\"LC8822\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8823\" class=\"blob-num js-line-number\" data-line-number=\"8823\"></td>\n        <td id=\"LC8823\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8824\" class=\"blob-num js-line-number\" data-line-number=\"8824\"></td>\n        <td id=\"LC8824\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8825\" class=\"blob-num js-line-number\" data-line-number=\"8825\"></td>\n        <td id=\"LC8825\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">srcPath</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8826\" class=\"blob-num js-line-number\" data-line-number=\"8826\"></td>\n        <td id=\"LC8826\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8827\" class=\"blob-num js-line-number\" data-line-number=\"8827\"></td>\n        <td id=\"LC8827\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8828\" class=\"blob-num js-line-number\" data-line-number=\"8828\"></td>\n        <td id=\"LC8828\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isNull</span>(<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span>) <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-en\">isNull</span>(<span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8829\" class=\"blob-num js-line-number\" data-line-number=\"8829\"></td>\n        <td id=\"LC8829\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">path</span> <span class=\"pl-k\">=</span> (<span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">pathname</span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8830\" class=\"blob-num js-line-number\" data-line-number=\"8830\"></td>\n        <td id=\"LC8830\" class=\"blob-code blob-code-inner js-file-line\">                  (<span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">search</span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8831\" class=\"blob-num js-line-number\" data-line-number=\"8831\"></td>\n        <td id=\"LC8831\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8832\" class=\"blob-num js-line-number\" data-line-number=\"8832\"></td>\n        <td id=\"LC8832\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">auth</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">auth</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">auth</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8833\" class=\"blob-num js-line-number\" data-line-number=\"8833\"></td>\n        <td id=\"LC8833\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">slashes</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-smi\">slashes</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">relative</span>.<span class=\"pl-smi\">slashes</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8834\" class=\"blob-num js-line-number\" data-line-number=\"8834\"></td>\n        <td id=\"LC8834\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">href</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">result</span>.<span class=\"pl-en\">format</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8835\" class=\"blob-num js-line-number\" data-line-number=\"8835\"></td>\n        <td id=\"LC8835\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L8836\" class=\"blob-num js-line-number\" data-line-number=\"8836\"></td>\n        <td id=\"LC8836\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8837\" class=\"blob-num js-line-number\" data-line-number=\"8837\"></td>\n        <td id=\"LC8837\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8838\" class=\"blob-num js-line-number\" data-line-number=\"8838\"></td>\n        <td id=\"LC8838\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">Url</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">parseHost</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L8839\" class=\"blob-num js-line-number\" data-line-number=\"8839\"></td>\n        <td id=\"LC8839\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> host <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">host</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8840\" class=\"blob-num js-line-number\" data-line-number=\"8840\"></td>\n        <td id=\"LC8840\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> port <span class=\"pl-k\">=</span> <span class=\"pl-smi\">portPattern</span>.<span class=\"pl-c1\">exec</span>(host);</td>\n      </tr>\n      <tr>\n        <td id=\"L8841\" class=\"blob-num js-line-number\" data-line-number=\"8841\"></td>\n        <td id=\"LC8841\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (port) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8842\" class=\"blob-num js-line-number\" data-line-number=\"8842\"></td>\n        <td id=\"LC8842\" class=\"blob-code blob-code-inner js-file-line\">    port <span class=\"pl-k\">=</span> port[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L8843\" class=\"blob-num js-line-number\" data-line-number=\"8843\"></td>\n        <td id=\"LC8843\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (port <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8844\" class=\"blob-num js-line-number\" data-line-number=\"8844\"></td>\n        <td id=\"LC8844\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">port</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">port</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8845\" class=\"blob-num js-line-number\" data-line-number=\"8845\"></td>\n        <td id=\"LC8845\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8846\" class=\"blob-num js-line-number\" data-line-number=\"8846\"></td>\n        <td id=\"LC8846\" class=\"blob-code blob-code-inner js-file-line\">    host <span class=\"pl-k\">=</span> <span class=\"pl-smi\">host</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">0</span>, <span class=\"pl-smi\">host</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-smi\">port</span>.<span class=\"pl-c1\">length</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8847\" class=\"blob-num js-line-number\" data-line-number=\"8847\"></td>\n        <td id=\"LC8847\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8848\" class=\"blob-num js-line-number\" data-line-number=\"8848\"></td>\n        <td id=\"LC8848\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (host) <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">hostname</span> <span class=\"pl-k\">=</span> host;</td>\n      </tr>\n      <tr>\n        <td id=\"L8849\" class=\"blob-num js-line-number\" data-line-number=\"8849\"></td>\n        <td id=\"LC8849\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8850\" class=\"blob-num js-line-number\" data-line-number=\"8850\"></td>\n        <td id=\"LC8850\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8851\" class=\"blob-num js-line-number\" data-line-number=\"8851\"></td>\n        <td id=\"LC8851\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isString</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8852\" class=\"blob-num js-line-number\" data-line-number=\"8852\"></td>\n        <td id=\"LC8852\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>string<span class=\"pl-pds\">&quot;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8853\" class=\"blob-num js-line-number\" data-line-number=\"8853\"></td>\n        <td id=\"LC8853\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8854\" class=\"blob-num js-line-number\" data-line-number=\"8854\"></td>\n        <td id=\"LC8854\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8855\" class=\"blob-num js-line-number\" data-line-number=\"8855\"></td>\n        <td id=\"LC8855\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isObject</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8856\" class=\"blob-num js-line-number\" data-line-number=\"8856\"></td>\n        <td id=\"LC8856\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> arg <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8857\" class=\"blob-num js-line-number\" data-line-number=\"8857\"></td>\n        <td id=\"LC8857\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8858\" class=\"blob-num js-line-number\" data-line-number=\"8858\"></td>\n        <td id=\"LC8858\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8859\" class=\"blob-num js-line-number\" data-line-number=\"8859\"></td>\n        <td id=\"LC8859\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isNull</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8860\" class=\"blob-num js-line-number\" data-line-number=\"8860\"></td>\n        <td id=\"LC8860\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8861\" class=\"blob-num js-line-number\" data-line-number=\"8861\"></td>\n        <td id=\"LC8861\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8862\" class=\"blob-num js-line-number\" data-line-number=\"8862\"></td>\n        <td id=\"LC8862\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isNullOrUndefined</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8863\" class=\"blob-num js-line-number\" data-line-number=\"8863\"></td>\n        <td id=\"LC8863\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span>  arg <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8864\" class=\"blob-num js-line-number\" data-line-number=\"8864\"></td>\n        <td id=\"LC8864\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8865\" class=\"blob-num js-line-number\" data-line-number=\"8865\"></td>\n        <td id=\"LC8865\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8866\" class=\"blob-num js-line-number\" data-line-number=\"8866\"></td>\n        <td id=\"LC8866\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>punycode<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">59</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>querystring<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">62</span>}],<span class=\"pl-c1\">64</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L8867\" class=\"blob-num js-line-number\" data-line-number=\"8867\"></td>\n        <td id=\"LC8867\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-en\">exports</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span> <span class=\"pl-en\">isBuffer</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8868\" class=\"blob-num js-line-number\" data-line-number=\"8868\"></td>\n        <td id=\"LC8868\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> arg <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L8869\" class=\"blob-num js-line-number\" data-line-number=\"8869\"></td>\n        <td id=\"LC8869\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">arg</span>.<span class=\"pl-smi\">copy</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L8870\" class=\"blob-num js-line-number\" data-line-number=\"8870\"></td>\n        <td id=\"LC8870\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">arg</span>.<span class=\"pl-smi\">fill</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L8871\" class=\"blob-num js-line-number\" data-line-number=\"8871\"></td>\n        <td id=\"LC8871\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-smi\">arg</span>.<span class=\"pl-smi\">readUInt8</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8872\" class=\"blob-num js-line-number\" data-line-number=\"8872\"></td>\n        <td id=\"LC8872\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8873\" class=\"blob-num js-line-number\" data-line-number=\"8873\"></td>\n        <td id=\"LC8873\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">65</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L8874\" class=\"blob-num js-line-number\" data-line-number=\"8874\"></td>\n        <td id=\"LC8874\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span> (<span class=\"pl-c1\">process</span>,<span class=\"pl-c1\">global</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L8875\" class=\"blob-num js-line-number\" data-line-number=\"8875\"></td>\n        <td id=\"LC8875\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8876\" class=\"blob-num js-line-number\" data-line-number=\"8876\"></td>\n        <td id=\"LC8876\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> formatRegExp <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span>%<span class=\"pl-c1\">[sdj%]</span><span class=\"pl-pds\">/</span>g</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8877\" class=\"blob-num js-line-number\" data-line-number=\"8877\"></td>\n        <td id=\"LC8877\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">format</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">f</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8878\" class=\"blob-num js-line-number\" data-line-number=\"8878\"></td>\n        <td id=\"LC8878\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isString</span>(f)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8879\" class=\"blob-num js-line-number\" data-line-number=\"8879\"></td>\n        <td id=\"LC8879\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> objects <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L8880\" class=\"blob-num js-line-number\" data-line-number=\"8880\"></td>\n        <td id=\"LC8880\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>; i <span class=\"pl-k\">&lt;</span> <span class=\"pl-v\">arguments</span>.<span class=\"pl-c1\">length</span>; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8881\" class=\"blob-num js-line-number\" data-line-number=\"8881\"></td>\n        <td id=\"LC8881\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">objects</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-en\">inspect</span>(<span class=\"pl-v\">arguments</span>[i]));</td>\n      </tr>\n      <tr>\n        <td id=\"L8882\" class=\"blob-num js-line-number\" data-line-number=\"8882\"></td>\n        <td id=\"LC8882\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8883\" class=\"blob-num js-line-number\" data-line-number=\"8883\"></td>\n        <td id=\"LC8883\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">objects</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8884\" class=\"blob-num js-line-number\" data-line-number=\"8884\"></td>\n        <td id=\"LC8884\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8885\" class=\"blob-num js-line-number\" data-line-number=\"8885\"></td>\n        <td id=\"LC8885\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8886\" class=\"blob-num js-line-number\" data-line-number=\"8886\"></td>\n        <td id=\"LC8886\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8887\" class=\"blob-num js-line-number\" data-line-number=\"8887\"></td>\n        <td id=\"LC8887\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> args <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8888\" class=\"blob-num js-line-number\" data-line-number=\"8888\"></td>\n        <td id=\"LC8888\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">args</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8889\" class=\"blob-num js-line-number\" data-line-number=\"8889\"></td>\n        <td id=\"LC8889\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> str <span class=\"pl-k\">=</span> <span class=\"pl-c1\">String</span>(f).<span class=\"pl-c1\">replace</span>(formatRegExp, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">x</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8890\" class=\"blob-num js-line-number\" data-line-number=\"8890\"></td>\n        <td id=\"LC8890\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (x <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8891\" class=\"blob-num js-line-number\" data-line-number=\"8891\"></td>\n        <td id=\"LC8891\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (i <span class=\"pl-k\">&gt;=</span> len) <span class=\"pl-k\">return</span> x;</td>\n      </tr>\n      <tr>\n        <td id=\"L8892\" class=\"blob-num js-line-number\" data-line-number=\"8892\"></td>\n        <td id=\"LC8892\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">switch</span> (x) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8893\" class=\"blob-num js-line-number\" data-line-number=\"8893\"></td>\n        <td id=\"LC8893\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%s<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">String</span>(args[i<span class=\"pl-k\">++</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L8894\" class=\"blob-num js-line-number\" data-line-number=\"8894\"></td>\n        <td id=\"LC8894\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%d<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-c1\">Number</span>(args[i<span class=\"pl-k\">++</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L8895\" class=\"blob-num js-line-number\" data-line-number=\"8895\"></td>\n        <td id=\"LC8895\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">case</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%j<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8896\" class=\"blob-num js-line-number\" data-line-number=\"8896\"></td>\n        <td id=\"LC8896\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8897\" class=\"blob-num js-line-number\" data-line-number=\"8897\"></td>\n        <td id=\"LC8897\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">return</span> <span class=\"pl-c1\">JSON</span>.<span class=\"pl-en\">stringify</span>(args[i<span class=\"pl-k\">++</span>]);</td>\n      </tr>\n      <tr>\n        <td id=\"L8898\" class=\"blob-num js-line-number\" data-line-number=\"8898\"></td>\n        <td id=\"LC8898\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">catch</span> (_) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8899\" class=\"blob-num js-line-number\" data-line-number=\"8899\"></td>\n        <td id=\"LC8899\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[Circular]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8900\" class=\"blob-num js-line-number\" data-line-number=\"8900\"></td>\n        <td id=\"LC8900\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L8901\" class=\"blob-num js-line-number\" data-line-number=\"8901\"></td>\n        <td id=\"LC8901\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">default</span><span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L8902\" class=\"blob-num js-line-number\" data-line-number=\"8902\"></td>\n        <td id=\"LC8902\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> x;</td>\n      </tr>\n      <tr>\n        <td id=\"L8903\" class=\"blob-num js-line-number\" data-line-number=\"8903\"></td>\n        <td id=\"LC8903\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8904\" class=\"blob-num js-line-number\" data-line-number=\"8904\"></td>\n        <td id=\"LC8904\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L8905\" class=\"blob-num js-line-number\" data-line-number=\"8905\"></td>\n        <td id=\"LC8905\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> x <span class=\"pl-k\">=</span> args[i]; i <span class=\"pl-k\">&lt;</span> len; x <span class=\"pl-k\">=</span> args[<span class=\"pl-k\">++</span>i]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8906\" class=\"blob-num js-line-number\" data-line-number=\"8906\"></td>\n        <td id=\"LC8906\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isNull</span>(x) <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-en\">isObject</span>(x)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8907\" class=\"blob-num js-line-number\" data-line-number=\"8907\"></td>\n        <td id=\"LC8907\" class=\"blob-code blob-code-inner js-file-line\">      str <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> x;</td>\n      </tr>\n      <tr>\n        <td id=\"L8908\" class=\"blob-num js-line-number\" data-line-number=\"8908\"></td>\n        <td id=\"LC8908\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8909\" class=\"blob-num js-line-number\" data-line-number=\"8909\"></td>\n        <td id=\"LC8909\" class=\"blob-code blob-code-inner js-file-line\">      str <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-en\">inspect</span>(x);</td>\n      </tr>\n      <tr>\n        <td id=\"L8910\" class=\"blob-num js-line-number\" data-line-number=\"8910\"></td>\n        <td id=\"LC8910\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8911\" class=\"blob-num js-line-number\" data-line-number=\"8911\"></td>\n        <td id=\"LC8911\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8912\" class=\"blob-num js-line-number\" data-line-number=\"8912\"></td>\n        <td id=\"LC8912\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> str;</td>\n      </tr>\n      <tr>\n        <td id=\"L8913\" class=\"blob-num js-line-number\" data-line-number=\"8913\"></td>\n        <td id=\"LC8913\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8914\" class=\"blob-num js-line-number\" data-line-number=\"8914\"></td>\n        <td id=\"LC8914\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8915\" class=\"blob-num js-line-number\" data-line-number=\"8915\"></td>\n        <td id=\"LC8915\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8916\" class=\"blob-num js-line-number\" data-line-number=\"8916\"></td>\n        <td id=\"LC8916\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">deprecate</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">fn</span>, <span class=\"pl-smi\">msg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8917\" class=\"blob-num js-line-number\" data-line-number=\"8917\"></td>\n        <td id=\"LC8917\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isUndefined</span>(<span class=\"pl-c1\">global</span>.<span class=\"pl-smi\">process</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8918\" class=\"blob-num js-line-number\" data-line-number=\"8918\"></td>\n        <td id=\"LC8918\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L8919\" class=\"blob-num js-line-number\" data-line-number=\"8919\"></td>\n        <td id=\"LC8919\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">deprecate</span>(fn, msg).<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8920\" class=\"blob-num js-line-number\" data-line-number=\"8920\"></td>\n        <td id=\"LC8920\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L8921\" class=\"blob-num js-line-number\" data-line-number=\"8921\"></td>\n        <td id=\"LC8921\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8922\" class=\"blob-num js-line-number\" data-line-number=\"8922\"></td>\n        <td id=\"LC8922\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8923\" class=\"blob-num js-line-number\" data-line-number=\"8923\"></td>\n        <td id=\"LC8923\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">noDeprecation</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">true</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8924\" class=\"blob-num js-line-number\" data-line-number=\"8924\"></td>\n        <td id=\"LC8924\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> fn;</td>\n      </tr>\n      <tr>\n        <td id=\"L8925\" class=\"blob-num js-line-number\" data-line-number=\"8925\"></td>\n        <td id=\"LC8925\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8926\" class=\"blob-num js-line-number\" data-line-number=\"8926\"></td>\n        <td id=\"LC8926\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8927\" class=\"blob-num js-line-number\" data-line-number=\"8927\"></td>\n        <td id=\"LC8927\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> warned <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8928\" class=\"blob-num js-line-number\" data-line-number=\"8928\"></td>\n        <td id=\"LC8928\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">function</span> <span class=\"pl-en\">deprecated</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L8929\" class=\"blob-num js-line-number\" data-line-number=\"8929\"></td>\n        <td id=\"LC8929\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>warned) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8930\" class=\"blob-num js-line-number\" data-line-number=\"8930\"></td>\n        <td id=\"LC8930\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">throwDeprecation</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8931\" class=\"blob-num js-line-number\" data-line-number=\"8931\"></td>\n        <td id=\"LC8931\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(msg);</td>\n      </tr>\n      <tr>\n        <td id=\"L8932\" class=\"blob-num js-line-number\" data-line-number=\"8932\"></td>\n        <td id=\"LC8932\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">traceDeprecation</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8933\" class=\"blob-num js-line-number\" data-line-number=\"8933\"></td>\n        <td id=\"LC8933\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">console</span>.<span class=\"pl-en\">trace</span>(msg);</td>\n      </tr>\n      <tr>\n        <td id=\"L8934\" class=\"blob-num js-line-number\" data-line-number=\"8934\"></td>\n        <td id=\"LC8934\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8935\" class=\"blob-num js-line-number\" data-line-number=\"8935\"></td>\n        <td id=\"LC8935\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">console</span>.<span class=\"pl-c1\">error</span>(msg);</td>\n      </tr>\n      <tr>\n        <td id=\"L8936\" class=\"blob-num js-line-number\" data-line-number=\"8936\"></td>\n        <td id=\"LC8936\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L8937\" class=\"blob-num js-line-number\" data-line-number=\"8937\"></td>\n        <td id=\"LC8937\" class=\"blob-code blob-code-inner js-file-line\">      warned <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8938\" class=\"blob-num js-line-number\" data-line-number=\"8938\"></td>\n        <td id=\"LC8938\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8939\" class=\"blob-num js-line-number\" data-line-number=\"8939\"></td>\n        <td id=\"LC8939\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">fn</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8940\" class=\"blob-num js-line-number\" data-line-number=\"8940\"></td>\n        <td id=\"LC8940\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8941\" class=\"blob-num js-line-number\" data-line-number=\"8941\"></td>\n        <td id=\"LC8941\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8942\" class=\"blob-num js-line-number\" data-line-number=\"8942\"></td>\n        <td id=\"LC8942\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> deprecated;</td>\n      </tr>\n      <tr>\n        <td id=\"L8943\" class=\"blob-num js-line-number\" data-line-number=\"8943\"></td>\n        <td id=\"LC8943\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8944\" class=\"blob-num js-line-number\" data-line-number=\"8944\"></td>\n        <td id=\"LC8944\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8945\" class=\"blob-num js-line-number\" data-line-number=\"8945\"></td>\n        <td id=\"LC8945\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8946\" class=\"blob-num js-line-number\" data-line-number=\"8946\"></td>\n        <td id=\"LC8946\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> debugs <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L8947\" class=\"blob-num js-line-number\" data-line-number=\"8947\"></td>\n        <td id=\"LC8947\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> debugEnviron;</td>\n      </tr>\n      <tr>\n        <td id=\"L8948\" class=\"blob-num js-line-number\" data-line-number=\"8948\"></td>\n        <td id=\"LC8948\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">debuglog</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">set</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8949\" class=\"blob-num js-line-number\" data-line-number=\"8949\"></td>\n        <td id=\"LC8949\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isUndefined</span>(debugEnviron))</td>\n      </tr>\n      <tr>\n        <td id=\"L8950\" class=\"blob-num js-line-number\" data-line-number=\"8950\"></td>\n        <td id=\"LC8950\" class=\"blob-code blob-code-inner js-file-line\">    debugEnviron <span class=\"pl-k\">=</span> <span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">env</span>.<span class=\"pl-c1\">NODE_DEBUG</span> <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8951\" class=\"blob-num js-line-number\" data-line-number=\"8951\"></td>\n        <td id=\"LC8951\" class=\"blob-code blob-code-inner js-file-line\">  set <span class=\"pl-k\">=</span> <span class=\"pl-smi\">set</span>.<span class=\"pl-c1\">toUpperCase</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L8952\" class=\"blob-num js-line-number\" data-line-number=\"8952\"></td>\n        <td id=\"LC8952\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>debugs[set]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8953\" class=\"blob-num js-line-number\" data-line-number=\"8953\"></td>\n        <td id=\"LC8953\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">new</span> <span class=\"pl-en\">RegExp</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\\\</span>b<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> set <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\\\</span>b<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>i<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">test</span>(debugEnviron)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8954\" class=\"blob-num js-line-number\" data-line-number=\"8954\"></td>\n        <td id=\"LC8954\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> pid <span class=\"pl-k\">=</span> <span class=\"pl-c1\">process</span>.<span class=\"pl-smi\">pid</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8955\" class=\"blob-num js-line-number\" data-line-number=\"8955\"></td>\n        <td id=\"LC8955\" class=\"blob-code blob-code-inner js-file-line\">      debugs[set] <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L8956\" class=\"blob-num js-line-number\" data-line-number=\"8956\"></td>\n        <td id=\"LC8956\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> msg <span class=\"pl-k\">=</span> <span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">format</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-c1\">exports</span>, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8957\" class=\"blob-num js-line-number\" data-line-number=\"8957\"></td>\n        <td id=\"LC8957\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">console</span>.<span class=\"pl-c1\">error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%s %d: %s<span class=\"pl-pds\">&#39;</span></span>, set, pid, msg);</td>\n      </tr>\n      <tr>\n        <td id=\"L8958\" class=\"blob-num js-line-number\" data-line-number=\"8958\"></td>\n        <td id=\"LC8958\" class=\"blob-code blob-code-inner js-file-line\">      };</td>\n      </tr>\n      <tr>\n        <td id=\"L8959\" class=\"blob-num js-line-number\" data-line-number=\"8959\"></td>\n        <td id=\"LC8959\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8960\" class=\"blob-num js-line-number\" data-line-number=\"8960\"></td>\n        <td id=\"LC8960\" class=\"blob-code blob-code-inner js-file-line\">      debugs[set] <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {};</td>\n      </tr>\n      <tr>\n        <td id=\"L8961\" class=\"blob-num js-line-number\" data-line-number=\"8961\"></td>\n        <td id=\"LC8961\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L8962\" class=\"blob-num js-line-number\" data-line-number=\"8962\"></td>\n        <td id=\"LC8962\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8963\" class=\"blob-num js-line-number\" data-line-number=\"8963\"></td>\n        <td id=\"LC8963\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> debugs[set];</td>\n      </tr>\n      <tr>\n        <td id=\"L8964\" class=\"blob-num js-line-number\" data-line-number=\"8964\"></td>\n        <td id=\"LC8964\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L8965\" class=\"blob-num js-line-number\" data-line-number=\"8965\"></td>\n        <td id=\"LC8965\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8966\" class=\"blob-num js-line-number\" data-line-number=\"8966\"></td>\n        <td id=\"LC8966\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8967\" class=\"blob-num js-line-number\" data-line-number=\"8967\"></td>\n        <td id=\"LC8967\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8968\" class=\"blob-num js-line-number\" data-line-number=\"8968\"></td>\n        <td id=\"LC8968\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8969\" class=\"blob-num js-line-number\" data-line-number=\"8969\"></td>\n        <td id=\"LC8969\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">inspect</span>(<span class=\"pl-smi\">obj</span>, <span class=\"pl-smi\">opts</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8970\" class=\"blob-num js-line-number\" data-line-number=\"8970\"></td>\n        <td id=\"LC8970\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> ctx <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8971\" class=\"blob-num js-line-number\" data-line-number=\"8971\"></td>\n        <td id=\"LC8971\" class=\"blob-code blob-code-inner js-file-line\">    seen<span class=\"pl-k\">:</span> [],</td>\n      </tr>\n      <tr>\n        <td id=\"L8972\" class=\"blob-num js-line-number\" data-line-number=\"8972\"></td>\n        <td id=\"LC8972\" class=\"blob-code blob-code-inner js-file-line\">    stylize<span class=\"pl-k\">:</span> stylizeNoColor</td>\n      </tr>\n      <tr>\n        <td id=\"L8973\" class=\"blob-num js-line-number\" data-line-number=\"8973\"></td>\n        <td id=\"LC8973\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L8974\" class=\"blob-num js-line-number\" data-line-number=\"8974\"></td>\n        <td id=\"LC8974\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">arguments</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">3</span>) <span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">depth</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">2</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L8975\" class=\"blob-num js-line-number\" data-line-number=\"8975\"></td>\n        <td id=\"LC8975\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-v\">arguments</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">4</span>) <span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">colors</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>[<span class=\"pl-c1\">3</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L8976\" class=\"blob-num js-line-number\" data-line-number=\"8976\"></td>\n        <td id=\"LC8976\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isBoolean</span>(opts)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8977\" class=\"blob-num js-line-number\" data-line-number=\"8977\"></td>\n        <td id=\"LC8977\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">showHidden</span> <span class=\"pl-k\">=</span> opts;</td>\n      </tr>\n      <tr>\n        <td id=\"L8978\" class=\"blob-num js-line-number\" data-line-number=\"8978\"></td>\n        <td id=\"LC8978\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (opts) {</td>\n      </tr>\n      <tr>\n        <td id=\"L8979\" class=\"blob-num js-line-number\" data-line-number=\"8979\"></td>\n        <td id=\"LC8979\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">_extend</span>(ctx, opts);</td>\n      </tr>\n      <tr>\n        <td id=\"L8980\" class=\"blob-num js-line-number\" data-line-number=\"8980\"></td>\n        <td id=\"LC8980\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L8981\" class=\"blob-num js-line-number\" data-line-number=\"8981\"></td>\n        <td id=\"LC8981\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isUndefined</span>(<span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">showHidden</span>)) <span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">showHidden</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8982\" class=\"blob-num js-line-number\" data-line-number=\"8982\"></td>\n        <td id=\"LC8982\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isUndefined</span>(<span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">depth</span>)) <span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">depth</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">2</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8983\" class=\"blob-num js-line-number\" data-line-number=\"8983\"></td>\n        <td id=\"LC8983\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isUndefined</span>(<span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">colors</span>)) <span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">colors</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8984\" class=\"blob-num js-line-number\" data-line-number=\"8984\"></td>\n        <td id=\"LC8984\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isUndefined</span>(<span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">customInspect</span>)) <span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">customInspect</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L8985\" class=\"blob-num js-line-number\" data-line-number=\"8985\"></td>\n        <td id=\"LC8985\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">colors</span>) <span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">stylize</span> <span class=\"pl-k\">=</span> stylizeWithColor;</td>\n      </tr>\n      <tr>\n        <td id=\"L8986\" class=\"blob-num js-line-number\" data-line-number=\"8986\"></td>\n        <td id=\"LC8986\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">formatValue</span>(ctx, obj, <span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">depth</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L8987\" class=\"blob-num js-line-number\" data-line-number=\"8987\"></td>\n        <td id=\"LC8987\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L8988\" class=\"blob-num js-line-number\" data-line-number=\"8988\"></td>\n        <td id=\"LC8988\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">inspect</span> <span class=\"pl-k\">=</span> inspect;</td>\n      </tr>\n      <tr>\n        <td id=\"L8989\" class=\"blob-num js-line-number\" data-line-number=\"8989\"></td>\n        <td id=\"LC8989\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8990\" class=\"blob-num js-line-number\" data-line-number=\"8990\"></td>\n        <td id=\"LC8990\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L8991\" class=\"blob-num js-line-number\" data-line-number=\"8991\"></td>\n        <td id=\"LC8991\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">inspect</span>.<span class=\"pl-smi\">colors</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L8992\" class=\"blob-num js-line-number\" data-line-number=\"8992\"></td>\n        <td id=\"LC8992\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>bold<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">1</span>, <span class=\"pl-c1\">22</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L8993\" class=\"blob-num js-line-number\" data-line-number=\"8993\"></td>\n        <td id=\"LC8993\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>italic<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">3</span>, <span class=\"pl-c1\">23</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L8994\" class=\"blob-num js-line-number\" data-line-number=\"8994\"></td>\n        <td id=\"LC8994\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>underline<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">4</span>, <span class=\"pl-c1\">24</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L8995\" class=\"blob-num js-line-number\" data-line-number=\"8995\"></td>\n        <td id=\"LC8995\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>inverse<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">7</span>, <span class=\"pl-c1\">27</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L8996\" class=\"blob-num js-line-number\" data-line-number=\"8996\"></td>\n        <td id=\"LC8996\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>white<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">37</span>, <span class=\"pl-c1\">39</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L8997\" class=\"blob-num js-line-number\" data-line-number=\"8997\"></td>\n        <td id=\"LC8997\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>grey<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">90</span>, <span class=\"pl-c1\">39</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L8998\" class=\"blob-num js-line-number\" data-line-number=\"8998\"></td>\n        <td id=\"LC8998\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>black<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">30</span>, <span class=\"pl-c1\">39</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L8999\" class=\"blob-num js-line-number\" data-line-number=\"8999\"></td>\n        <td id=\"LC8999\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>blue<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">34</span>, <span class=\"pl-c1\">39</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L9000\" class=\"blob-num js-line-number\" data-line-number=\"9000\"></td>\n        <td id=\"LC9000\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>cyan<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">36</span>, <span class=\"pl-c1\">39</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L9001\" class=\"blob-num js-line-number\" data-line-number=\"9001\"></td>\n        <td id=\"LC9001\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>green<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">32</span>, <span class=\"pl-c1\">39</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L9002\" class=\"blob-num js-line-number\" data-line-number=\"9002\"></td>\n        <td id=\"LC9002\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>magenta<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">35</span>, <span class=\"pl-c1\">39</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L9003\" class=\"blob-num js-line-number\" data-line-number=\"9003\"></td>\n        <td id=\"LC9003\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>red<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">31</span>, <span class=\"pl-c1\">39</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L9004\" class=\"blob-num js-line-number\" data-line-number=\"9004\"></td>\n        <td id=\"LC9004\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>yellow<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> [<span class=\"pl-c1\">33</span>, <span class=\"pl-c1\">39</span>]</td>\n      </tr>\n      <tr>\n        <td id=\"L9005\" class=\"blob-num js-line-number\" data-line-number=\"9005\"></td>\n        <td id=\"LC9005\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L9006\" class=\"blob-num js-line-number\" data-line-number=\"9006\"></td>\n        <td id=\"LC9006\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9007\" class=\"blob-num js-line-number\" data-line-number=\"9007\"></td>\n        <td id=\"LC9007\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-smi\">inspect</span>.<span class=\"pl-smi\">styles</span> <span class=\"pl-k\">=</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9008\" class=\"blob-num js-line-number\" data-line-number=\"9008\"></td>\n        <td id=\"LC9008\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>special<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>cyan<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L9009\" class=\"blob-num js-line-number\" data-line-number=\"9009\"></td>\n        <td id=\"LC9009\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>yellow<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L9010\" class=\"blob-num js-line-number\" data-line-number=\"9010\"></td>\n        <td id=\"LC9010\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>yellow<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L9011\" class=\"blob-num js-line-number\" data-line-number=\"9011\"></td>\n        <td id=\"LC9011\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>grey<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L9012\" class=\"blob-num js-line-number\" data-line-number=\"9012\"></td>\n        <td id=\"LC9012\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>null<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>bold<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L9013\" class=\"blob-num js-line-number\" data-line-number=\"9013\"></td>\n        <td id=\"LC9013\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>green<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L9014\" class=\"blob-num js-line-number\" data-line-number=\"9014\"></td>\n        <td id=\"LC9014\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>date<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>magenta<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L9015\" class=\"blob-num js-line-number\" data-line-number=\"9015\"></td>\n        <td id=\"LC9015\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>regexp<span class=\"pl-pds\">&#39;</span></span><span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>red<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L9016\" class=\"blob-num js-line-number\" data-line-number=\"9016\"></td>\n        <td id=\"LC9016\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L9017\" class=\"blob-num js-line-number\" data-line-number=\"9017\"></td>\n        <td id=\"LC9017\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9018\" class=\"blob-num js-line-number\" data-line-number=\"9018\"></td>\n        <td id=\"LC9018\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9019\" class=\"blob-num js-line-number\" data-line-number=\"9019\"></td>\n        <td id=\"LC9019\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">stylizeWithColor</span>(<span class=\"pl-smi\">str</span>, <span class=\"pl-smi\">styleType</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9020\" class=\"blob-num js-line-number\" data-line-number=\"9020\"></td>\n        <td id=\"LC9020\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> style <span class=\"pl-k\">=</span> <span class=\"pl-smi\">inspect</span>.<span class=\"pl-smi\">styles</span>[styleType];</td>\n      </tr>\n      <tr>\n        <td id=\"L9021\" class=\"blob-num js-line-number\" data-line-number=\"9021\"></td>\n        <td id=\"LC9021\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9022\" class=\"blob-num js-line-number\" data-line-number=\"9022\"></td>\n        <td id=\"LC9022\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (style) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9023\" class=\"blob-num js-line-number\" data-line-number=\"9023\"></td>\n        <td id=\"LC9023\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\u</span>001b[<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">inspect</span>.<span class=\"pl-smi\">colors</span>[style][<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>m<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> str <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9024\" class=\"blob-num js-line-number\" data-line-number=\"9024\"></td>\n        <td id=\"LC9024\" class=\"blob-code blob-code-inner js-file-line\">           <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\u</span>001b[<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">inspect</span>.<span class=\"pl-smi\">colors</span>[style][<span class=\"pl-c1\">1</span>] <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>m<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9025\" class=\"blob-num js-line-number\" data-line-number=\"9025\"></td>\n        <td id=\"LC9025\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9026\" class=\"blob-num js-line-number\" data-line-number=\"9026\"></td>\n        <td id=\"LC9026\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> str;</td>\n      </tr>\n      <tr>\n        <td id=\"L9027\" class=\"blob-num js-line-number\" data-line-number=\"9027\"></td>\n        <td id=\"LC9027\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9028\" class=\"blob-num js-line-number\" data-line-number=\"9028\"></td>\n        <td id=\"LC9028\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9029\" class=\"blob-num js-line-number\" data-line-number=\"9029\"></td>\n        <td id=\"LC9029\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9030\" class=\"blob-num js-line-number\" data-line-number=\"9030\"></td>\n        <td id=\"LC9030\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9031\" class=\"blob-num js-line-number\" data-line-number=\"9031\"></td>\n        <td id=\"LC9031\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">stylizeNoColor</span>(<span class=\"pl-smi\">str</span>, <span class=\"pl-smi\">styleType</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9032\" class=\"blob-num js-line-number\" data-line-number=\"9032\"></td>\n        <td id=\"LC9032\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> str;</td>\n      </tr>\n      <tr>\n        <td id=\"L9033\" class=\"blob-num js-line-number\" data-line-number=\"9033\"></td>\n        <td id=\"LC9033\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9034\" class=\"blob-num js-line-number\" data-line-number=\"9034\"></td>\n        <td id=\"LC9034\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9035\" class=\"blob-num js-line-number\" data-line-number=\"9035\"></td>\n        <td id=\"LC9035\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9036\" class=\"blob-num js-line-number\" data-line-number=\"9036\"></td>\n        <td id=\"LC9036\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">arrayToHash</span>(<span class=\"pl-smi\">array</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9037\" class=\"blob-num js-line-number\" data-line-number=\"9037\"></td>\n        <td id=\"LC9037\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> hash <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L9038\" class=\"blob-num js-line-number\" data-line-number=\"9038\"></td>\n        <td id=\"LC9038\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9039\" class=\"blob-num js-line-number\" data-line-number=\"9039\"></td>\n        <td id=\"LC9039\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">array</span>.<span class=\"pl-en\">forEach</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>, <span class=\"pl-smi\">idx</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9040\" class=\"blob-num js-line-number\" data-line-number=\"9040\"></td>\n        <td id=\"LC9040\" class=\"blob-code blob-code-inner js-file-line\">    hash[val] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9041\" class=\"blob-num js-line-number\" data-line-number=\"9041\"></td>\n        <td id=\"LC9041\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L9042\" class=\"blob-num js-line-number\" data-line-number=\"9042\"></td>\n        <td id=\"LC9042\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9043\" class=\"blob-num js-line-number\" data-line-number=\"9043\"></td>\n        <td id=\"LC9043\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> hash;</td>\n      </tr>\n      <tr>\n        <td id=\"L9044\" class=\"blob-num js-line-number\" data-line-number=\"9044\"></td>\n        <td id=\"LC9044\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9045\" class=\"blob-num js-line-number\" data-line-number=\"9045\"></td>\n        <td id=\"LC9045\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9046\" class=\"blob-num js-line-number\" data-line-number=\"9046\"></td>\n        <td id=\"LC9046\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9047\" class=\"blob-num js-line-number\" data-line-number=\"9047\"></td>\n        <td id=\"LC9047\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">formatValue</span>(<span class=\"pl-smi\">ctx</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">recurseTimes</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9048\" class=\"blob-num js-line-number\" data-line-number=\"9048\"></td>\n        <td id=\"LC9048\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">customInspect</span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9049\" class=\"blob-num js-line-number\" data-line-number=\"9049\"></td>\n        <td id=\"LC9049\" class=\"blob-code blob-code-inner js-file-line\">      value <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9050\" class=\"blob-num js-line-number\" data-line-number=\"9050\"></td>\n        <td id=\"LC9050\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">isFunction</span>(<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">inspect</span>) <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9051\" class=\"blob-num js-line-number\" data-line-number=\"9051\"></td>\n        <td id=\"LC9051\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">inspect</span> <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">inspect</span> <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9052\" class=\"blob-num js-line-number\" data-line-number=\"9052\"></td>\n        <td id=\"LC9052\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">!</span>(<span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">constructor</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">===</span> value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9053\" class=\"blob-num js-line-number\" data-line-number=\"9053\"></td>\n        <td id=\"LC9053\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> ret <span class=\"pl-k\">=</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-en\">inspect</span>(recurseTimes, ctx);</td>\n      </tr>\n      <tr>\n        <td id=\"L9054\" class=\"blob-num js-line-number\" data-line-number=\"9054\"></td>\n        <td id=\"LC9054\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isString</span>(ret)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9055\" class=\"blob-num js-line-number\" data-line-number=\"9055\"></td>\n        <td id=\"LC9055\" class=\"blob-code blob-code-inner js-file-line\">      ret <span class=\"pl-k\">=</span> <span class=\"pl-en\">formatValue</span>(ctx, ret, recurseTimes);</td>\n      </tr>\n      <tr>\n        <td id=\"L9056\" class=\"blob-num js-line-number\" data-line-number=\"9056\"></td>\n        <td id=\"LC9056\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9057\" class=\"blob-num js-line-number\" data-line-number=\"9057\"></td>\n        <td id=\"LC9057\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> ret;</td>\n      </tr>\n      <tr>\n        <td id=\"L9058\" class=\"blob-num js-line-number\" data-line-number=\"9058\"></td>\n        <td id=\"LC9058\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9059\" class=\"blob-num js-line-number\" data-line-number=\"9059\"></td>\n        <td id=\"LC9059\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9060\" class=\"blob-num js-line-number\" data-line-number=\"9060\"></td>\n        <td id=\"LC9060\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> primitive <span class=\"pl-k\">=</span> <span class=\"pl-en\">formatPrimitive</span>(ctx, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9061\" class=\"blob-num js-line-number\" data-line-number=\"9061\"></td>\n        <td id=\"LC9061\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (primitive) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9062\" class=\"blob-num js-line-number\" data-line-number=\"9062\"></td>\n        <td id=\"LC9062\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> primitive;</td>\n      </tr>\n      <tr>\n        <td id=\"L9063\" class=\"blob-num js-line-number\" data-line-number=\"9063\"></td>\n        <td id=\"LC9063\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9064\" class=\"blob-num js-line-number\" data-line-number=\"9064\"></td>\n        <td id=\"LC9064\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9065\" class=\"blob-num js-line-number\" data-line-number=\"9065\"></td>\n        <td id=\"LC9065\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> keys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9066\" class=\"blob-num js-line-number\" data-line-number=\"9066\"></td>\n        <td id=\"LC9066\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> visibleKeys <span class=\"pl-k\">=</span> <span class=\"pl-en\">arrayToHash</span>(keys);</td>\n      </tr>\n      <tr>\n        <td id=\"L9067\" class=\"blob-num js-line-number\" data-line-number=\"9067\"></td>\n        <td id=\"LC9067\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9068\" class=\"blob-num js-line-number\" data-line-number=\"9068\"></td>\n        <td id=\"LC9068\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">showHidden</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9069\" class=\"blob-num js-line-number\" data-line-number=\"9069\"></td>\n        <td id=\"LC9069\" class=\"blob-code blob-code-inner js-file-line\">    keys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">getOwnPropertyNames</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9070\" class=\"blob-num js-line-number\" data-line-number=\"9070\"></td>\n        <td id=\"LC9070\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9071\" class=\"blob-num js-line-number\" data-line-number=\"9071\"></td>\n        <td id=\"LC9071\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9072\" class=\"blob-num js-line-number\" data-line-number=\"9072\"></td>\n        <td id=\"LC9072\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isError</span>(value)</td>\n      </tr>\n      <tr>\n        <td id=\"L9073\" class=\"blob-num js-line-number\" data-line-number=\"9073\"></td>\n        <td id=\"LC9073\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">&amp;&amp;</span> (<span class=\"pl-smi\">keys</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>message<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">||</span> <span class=\"pl-smi\">keys</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>description<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9074\" class=\"blob-num js-line-number\" data-line-number=\"9074\"></td>\n        <td id=\"LC9074\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-en\">formatError</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9075\" class=\"blob-num js-line-number\" data-line-number=\"9075\"></td>\n        <td id=\"LC9075\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9076\" class=\"blob-num js-line-number\" data-line-number=\"9076\"></td>\n        <td id=\"LC9076\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9077\" class=\"blob-num js-line-number\" data-line-number=\"9077\"></td>\n        <td id=\"LC9077\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">keys</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9078\" class=\"blob-num js-line-number\" data-line-number=\"9078\"></td>\n        <td id=\"LC9078\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isFunction</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9079\" class=\"blob-num js-line-number\" data-line-number=\"9079\"></td>\n        <td id=\"LC9079\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>: <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9080\" class=\"blob-num js-line-number\" data-line-number=\"9080\"></td>\n        <td id=\"LC9080\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[Function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> name <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>special<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9081\" class=\"blob-num js-line-number\" data-line-number=\"9081\"></td>\n        <td id=\"LC9081\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9082\" class=\"blob-num js-line-number\" data-line-number=\"9082\"></td>\n        <td id=\"LC9082\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isRegExp</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9083\" class=\"blob-num js-line-number\" data-line-number=\"9083\"></td>\n        <td id=\"LC9083\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-c1\">RegExp</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>.<span class=\"pl-c1\">call</span>(value), <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>regexp<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9084\" class=\"blob-num js-line-number\" data-line-number=\"9084\"></td>\n        <td id=\"LC9084\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9085\" class=\"blob-num js-line-number\" data-line-number=\"9085\"></td>\n        <td id=\"LC9085\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isDate</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9086\" class=\"blob-num js-line-number\" data-line-number=\"9086\"></td>\n        <td id=\"LC9086\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-c1\">Date</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>.<span class=\"pl-c1\">call</span>(value), <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>date<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9087\" class=\"blob-num js-line-number\" data-line-number=\"9087\"></td>\n        <td id=\"LC9087\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9088\" class=\"blob-num js-line-number\" data-line-number=\"9088\"></td>\n        <td id=\"LC9088\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isError</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9089\" class=\"blob-num js-line-number\" data-line-number=\"9089\"></td>\n        <td id=\"LC9089\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">formatError</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9090\" class=\"blob-num js-line-number\" data-line-number=\"9090\"></td>\n        <td id=\"LC9090\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9091\" class=\"blob-num js-line-number\" data-line-number=\"9091\"></td>\n        <td id=\"LC9091\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9092\" class=\"blob-num js-line-number\" data-line-number=\"9092\"></td>\n        <td id=\"LC9092\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9093\" class=\"blob-num js-line-number\" data-line-number=\"9093\"></td>\n        <td id=\"LC9093\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> base <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>, array <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>, braces <span class=\"pl-k\">=</span> [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>{<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>}<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L9094\" class=\"blob-num js-line-number\" data-line-number=\"9094\"></td>\n        <td id=\"LC9094\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9095\" class=\"blob-num js-line-number\" data-line-number=\"9095\"></td>\n        <td id=\"LC9095\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isArray</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9096\" class=\"blob-num js-line-number\" data-line-number=\"9096\"></td>\n        <td id=\"LC9096\" class=\"blob-code blob-code-inner js-file-line\">    array <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9097\" class=\"blob-num js-line-number\" data-line-number=\"9097\"></td>\n        <td id=\"LC9097\" class=\"blob-code blob-code-inner js-file-line\">    braces <span class=\"pl-k\">=</span> [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L9098\" class=\"blob-num js-line-number\" data-line-number=\"9098\"></td>\n        <td id=\"LC9098\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9099\" class=\"blob-num js-line-number\" data-line-number=\"9099\"></td>\n        <td id=\"LC9099\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9100\" class=\"blob-num js-line-number\" data-line-number=\"9100\"></td>\n        <td id=\"LC9100\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isFunction</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9101\" class=\"blob-num js-line-number\" data-line-number=\"9101\"></td>\n        <td id=\"LC9101\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> n <span class=\"pl-k\">=</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>: <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9102\" class=\"blob-num js-line-number\" data-line-number=\"9102\"></td>\n        <td id=\"LC9102\" class=\"blob-code blob-code-inner js-file-line\">    base <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> [Function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> n <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9103\" class=\"blob-num js-line-number\" data-line-number=\"9103\"></td>\n        <td id=\"LC9103\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9104\" class=\"blob-num js-line-number\" data-line-number=\"9104\"></td>\n        <td id=\"LC9104\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9105\" class=\"blob-num js-line-number\" data-line-number=\"9105\"></td>\n        <td id=\"LC9105\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isRegExp</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9106\" class=\"blob-num js-line-number\" data-line-number=\"9106\"></td>\n        <td id=\"LC9106\" class=\"blob-code blob-code-inner js-file-line\">    base <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">RegExp</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>.<span class=\"pl-c1\">call</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9107\" class=\"blob-num js-line-number\" data-line-number=\"9107\"></td>\n        <td id=\"LC9107\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9108\" class=\"blob-num js-line-number\" data-line-number=\"9108\"></td>\n        <td id=\"LC9108\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9109\" class=\"blob-num js-line-number\" data-line-number=\"9109\"></td>\n        <td id=\"LC9109\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isDate</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9110\" class=\"blob-num js-line-number\" data-line-number=\"9110\"></td>\n        <td id=\"LC9110\" class=\"blob-code blob-code-inner js-file-line\">    base <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">Date</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toUTCString</span>.<span class=\"pl-c1\">call</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9111\" class=\"blob-num js-line-number\" data-line-number=\"9111\"></td>\n        <td id=\"LC9111\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9112\" class=\"blob-num js-line-number\" data-line-number=\"9112\"></td>\n        <td id=\"LC9112\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9113\" class=\"blob-num js-line-number\" data-line-number=\"9113\"></td>\n        <td id=\"LC9113\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isError</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9114\" class=\"blob-num js-line-number\" data-line-number=\"9114\"></td>\n        <td id=\"LC9114\" class=\"blob-code blob-code-inner js-file-line\">    base <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-en\">formatError</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9115\" class=\"blob-num js-line-number\" data-line-number=\"9115\"></td>\n        <td id=\"LC9115\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9116\" class=\"blob-num js-line-number\" data-line-number=\"9116\"></td>\n        <td id=\"LC9116\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9117\" class=\"blob-num js-line-number\" data-line-number=\"9117\"></td>\n        <td id=\"LC9117\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">keys</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> (<span class=\"pl-k\">!</span>array <span class=\"pl-k\">||</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">==</span> <span class=\"pl-c1\">0</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9118\" class=\"blob-num js-line-number\" data-line-number=\"9118\"></td>\n        <td id=\"LC9118\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> braces[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">+</span> base <span class=\"pl-k\">+</span> braces[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L9119\" class=\"blob-num js-line-number\" data-line-number=\"9119\"></td>\n        <td id=\"LC9119\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9120\" class=\"blob-num js-line-number\" data-line-number=\"9120\"></td>\n        <td id=\"LC9120\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9121\" class=\"blob-num js-line-number\" data-line-number=\"9121\"></td>\n        <td id=\"LC9121\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (recurseTimes <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9122\" class=\"blob-num js-line-number\" data-line-number=\"9122\"></td>\n        <td id=\"LC9122\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isRegExp</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9123\" class=\"blob-num js-line-number\" data-line-number=\"9123\"></td>\n        <td id=\"LC9123\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-c1\">RegExp</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>.<span class=\"pl-c1\">call</span>(value), <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>regexp<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9124\" class=\"blob-num js-line-number\" data-line-number=\"9124\"></td>\n        <td id=\"LC9124\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9125\" class=\"blob-num js-line-number\" data-line-number=\"9125\"></td>\n        <td id=\"LC9125\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[Object]<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>special<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9126\" class=\"blob-num js-line-number\" data-line-number=\"9126\"></td>\n        <td id=\"LC9126\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9127\" class=\"blob-num js-line-number\" data-line-number=\"9127\"></td>\n        <td id=\"LC9127\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9128\" class=\"blob-num js-line-number\" data-line-number=\"9128\"></td>\n        <td id=\"LC9128\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9129\" class=\"blob-num js-line-number\" data-line-number=\"9129\"></td>\n        <td id=\"LC9129\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">seen</span>.<span class=\"pl-c1\">push</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9130\" class=\"blob-num js-line-number\" data-line-number=\"9130\"></td>\n        <td id=\"LC9130\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9131\" class=\"blob-num js-line-number\" data-line-number=\"9131\"></td>\n        <td id=\"LC9131\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> output;</td>\n      </tr>\n      <tr>\n        <td id=\"L9132\" class=\"blob-num js-line-number\" data-line-number=\"9132\"></td>\n        <td id=\"LC9132\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (array) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9133\" class=\"blob-num js-line-number\" data-line-number=\"9133\"></td>\n        <td id=\"LC9133\" class=\"blob-code blob-code-inner js-file-line\">    output <span class=\"pl-k\">=</span> <span class=\"pl-en\">formatArray</span>(ctx, value, recurseTimes, visibleKeys, keys);</td>\n      </tr>\n      <tr>\n        <td id=\"L9134\" class=\"blob-num js-line-number\" data-line-number=\"9134\"></td>\n        <td id=\"LC9134\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9135\" class=\"blob-num js-line-number\" data-line-number=\"9135\"></td>\n        <td id=\"LC9135\" class=\"blob-code blob-code-inner js-file-line\">    output <span class=\"pl-k\">=</span> <span class=\"pl-smi\">keys</span>.<span class=\"pl-en\">map</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9136\" class=\"blob-num js-line-number\" data-line-number=\"9136\"></td>\n        <td id=\"LC9136\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">formatProperty</span>(ctx, value, recurseTimes, visibleKeys, key, array);</td>\n      </tr>\n      <tr>\n        <td id=\"L9137\" class=\"blob-num js-line-number\" data-line-number=\"9137\"></td>\n        <td id=\"LC9137\" class=\"blob-code blob-code-inner js-file-line\">    });</td>\n      </tr>\n      <tr>\n        <td id=\"L9138\" class=\"blob-num js-line-number\" data-line-number=\"9138\"></td>\n        <td id=\"LC9138\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9139\" class=\"blob-num js-line-number\" data-line-number=\"9139\"></td>\n        <td id=\"LC9139\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9140\" class=\"blob-num js-line-number\" data-line-number=\"9140\"></td>\n        <td id=\"LC9140\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">seen</span>.<span class=\"pl-c1\">pop</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L9141\" class=\"blob-num js-line-number\" data-line-number=\"9141\"></td>\n        <td id=\"LC9141\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9142\" class=\"blob-num js-line-number\" data-line-number=\"9142\"></td>\n        <td id=\"LC9142\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">reduceToSingleString</span>(output, base, braces);</td>\n      </tr>\n      <tr>\n        <td id=\"L9143\" class=\"blob-num js-line-number\" data-line-number=\"9143\"></td>\n        <td id=\"LC9143\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9144\" class=\"blob-num js-line-number\" data-line-number=\"9144\"></td>\n        <td id=\"LC9144\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9145\" class=\"blob-num js-line-number\" data-line-number=\"9145\"></td>\n        <td id=\"LC9145\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9146\" class=\"blob-num js-line-number\" data-line-number=\"9146\"></td>\n        <td id=\"LC9146\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">formatPrimitive</span>(<span class=\"pl-smi\">ctx</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9147\" class=\"blob-num js-line-number\" data-line-number=\"9147\"></td>\n        <td id=\"LC9147\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isUndefined</span>(value))</td>\n      </tr>\n      <tr>\n        <td id=\"L9148\" class=\"blob-num js-line-number\" data-line-number=\"9148\"></td>\n        <td id=\"LC9148\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9149\" class=\"blob-num js-line-number\" data-line-number=\"9149\"></td>\n        <td id=\"LC9149\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isString</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9150\" class=\"blob-num js-line-number\" data-line-number=\"9150\"></td>\n        <td id=\"LC9150\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> simple <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">JSON</span>.<span class=\"pl-en\">stringify</span>(value).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span>&quot;<span class=\"pl-k\">|</span>&quot;<span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L9151\" class=\"blob-num js-line-number\" data-line-number=\"9151\"></td>\n        <td id=\"LC9151\" class=\"blob-code blob-code-inner js-file-line\">                                             .<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>&#39;<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span><span class=\"pl-cce\">\\\\</span>&#39;<span class=\"pl-pds\">&quot;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L9152\" class=\"blob-num js-line-number\" data-line-number=\"9152\"></td>\n        <td id=\"LC9152\" class=\"blob-code blob-code-inner js-file-line\">                                             .<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\\\</span>&quot;<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9153\" class=\"blob-num js-line-number\" data-line-number=\"9153\"></td>\n        <td id=\"LC9153\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(simple, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9154\" class=\"blob-num js-line-number\" data-line-number=\"9154\"></td>\n        <td id=\"LC9154\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9155\" class=\"blob-num js-line-number\" data-line-number=\"9155\"></td>\n        <td id=\"LC9155\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isNumber</span>(value))</td>\n      </tr>\n      <tr>\n        <td id=\"L9156\" class=\"blob-num js-line-number\" data-line-number=\"9156\"></td>\n        <td id=\"LC9156\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> value, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9157\" class=\"blob-num js-line-number\" data-line-number=\"9157\"></td>\n        <td id=\"LC9157\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isBoolean</span>(value))</td>\n      </tr>\n      <tr>\n        <td id=\"L9158\" class=\"blob-num js-line-number\" data-line-number=\"9158\"></td>\n        <td id=\"LC9158\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> value, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9159\" class=\"blob-num js-line-number\" data-line-number=\"9159\"></td>\n        <td id=\"LC9159\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isNull</span>(value))</td>\n      </tr>\n      <tr>\n        <td id=\"L9160\" class=\"blob-num js-line-number\" data-line-number=\"9160\"></td>\n        <td id=\"LC9160\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>null<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>null<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9161\" class=\"blob-num js-line-number\" data-line-number=\"9161\"></td>\n        <td id=\"LC9161\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9162\" class=\"blob-num js-line-number\" data-line-number=\"9162\"></td>\n        <td id=\"LC9162\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9163\" class=\"blob-num js-line-number\" data-line-number=\"9163\"></td>\n        <td id=\"LC9163\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9164\" class=\"blob-num js-line-number\" data-line-number=\"9164\"></td>\n        <td id=\"LC9164\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">formatError</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9165\" class=\"blob-num js-line-number\" data-line-number=\"9165\"></td>\n        <td id=\"LC9165\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">Error</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>.<span class=\"pl-c1\">call</span>(value) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9166\" class=\"blob-num js-line-number\" data-line-number=\"9166\"></td>\n        <td id=\"LC9166\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9167\" class=\"blob-num js-line-number\" data-line-number=\"9167\"></td>\n        <td id=\"LC9167\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9168\" class=\"blob-num js-line-number\" data-line-number=\"9168\"></td>\n        <td id=\"LC9168\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9169\" class=\"blob-num js-line-number\" data-line-number=\"9169\"></td>\n        <td id=\"LC9169\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">formatArray</span>(<span class=\"pl-smi\">ctx</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">recurseTimes</span>, <span class=\"pl-smi\">visibleKeys</span>, <span class=\"pl-smi\">keys</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9170\" class=\"blob-num js-line-number\" data-line-number=\"9170\"></td>\n        <td id=\"LC9170\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> output <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L9171\" class=\"blob-num js-line-number\" data-line-number=\"9171\"></td>\n        <td id=\"LC9171\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, l <span class=\"pl-k\">=</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">&lt;</span> l; <span class=\"pl-k\">++</span>i) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9172\" class=\"blob-num js-line-number\" data-line-number=\"9172\"></td>\n        <td id=\"LC9172\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-en\">hasOwnProperty</span>(value, <span class=\"pl-c1\">String</span>(i))) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9173\" class=\"blob-num js-line-number\" data-line-number=\"9173\"></td>\n        <td id=\"LC9173\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-en\">formatProperty</span>(ctx, value, recurseTimes, visibleKeys,</td>\n      </tr>\n      <tr>\n        <td id=\"L9174\" class=\"blob-num js-line-number\" data-line-number=\"9174\"></td>\n        <td id=\"LC9174\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-c1\">String</span>(i), <span class=\"pl-c1\">true</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L9175\" class=\"blob-num js-line-number\" data-line-number=\"9175\"></td>\n        <td id=\"LC9175\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9176\" class=\"blob-num js-line-number\" data-line-number=\"9176\"></td>\n        <td id=\"LC9176\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9177\" class=\"blob-num js-line-number\" data-line-number=\"9177\"></td>\n        <td id=\"LC9177\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9178\" class=\"blob-num js-line-number\" data-line-number=\"9178\"></td>\n        <td id=\"LC9178\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9179\" class=\"blob-num js-line-number\" data-line-number=\"9179\"></td>\n        <td id=\"LC9179\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">keys</span>.<span class=\"pl-en\">forEach</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9180\" class=\"blob-num js-line-number\" data-line-number=\"9180\"></td>\n        <td id=\"LC9180\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\d</span><span class=\"pl-k\">+</span><span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9181\" class=\"blob-num js-line-number\" data-line-number=\"9181\"></td>\n        <td id=\"LC9181\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-en\">formatProperty</span>(ctx, value, recurseTimes, visibleKeys,</td>\n      </tr>\n      <tr>\n        <td id=\"L9182\" class=\"blob-num js-line-number\" data-line-number=\"9182\"></td>\n        <td id=\"LC9182\" class=\"blob-code blob-code-inner js-file-line\">          key, <span class=\"pl-c1\">true</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L9183\" class=\"blob-num js-line-number\" data-line-number=\"9183\"></td>\n        <td id=\"LC9183\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9184\" class=\"blob-num js-line-number\" data-line-number=\"9184\"></td>\n        <td id=\"LC9184\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L9185\" class=\"blob-num js-line-number\" data-line-number=\"9185\"></td>\n        <td id=\"LC9185\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> output;</td>\n      </tr>\n      <tr>\n        <td id=\"L9186\" class=\"blob-num js-line-number\" data-line-number=\"9186\"></td>\n        <td id=\"LC9186\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9187\" class=\"blob-num js-line-number\" data-line-number=\"9187\"></td>\n        <td id=\"LC9187\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9188\" class=\"blob-num js-line-number\" data-line-number=\"9188\"></td>\n        <td id=\"LC9188\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9189\" class=\"blob-num js-line-number\" data-line-number=\"9189\"></td>\n        <td id=\"LC9189\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">formatProperty</span>(<span class=\"pl-smi\">ctx</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">recurseTimes</span>, <span class=\"pl-smi\">visibleKeys</span>, <span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">array</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9190\" class=\"blob-num js-line-number\" data-line-number=\"9190\"></td>\n        <td id=\"LC9190\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> name, str, desc;</td>\n      </tr>\n      <tr>\n        <td id=\"L9191\" class=\"blob-num js-line-number\" data-line-number=\"9191\"></td>\n        <td id=\"LC9191\" class=\"blob-code blob-code-inner js-file-line\">  desc <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">getOwnPropertyDescriptor</span>(value, key) <span class=\"pl-k\">||</span> { value<span class=\"pl-k\">:</span> value[key] };</td>\n      </tr>\n      <tr>\n        <td id=\"L9192\" class=\"blob-num js-line-number\" data-line-number=\"9192\"></td>\n        <td id=\"LC9192\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">desc</span>.<span class=\"pl-smi\">get</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9193\" class=\"blob-num js-line-number\" data-line-number=\"9193\"></td>\n        <td id=\"LC9193\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">desc</span>.<span class=\"pl-smi\">set</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9194\" class=\"blob-num js-line-number\" data-line-number=\"9194\"></td>\n        <td id=\"LC9194\" class=\"blob-code blob-code-inner js-file-line\">      str <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[Getter/Setter]<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>special<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9195\" class=\"blob-num js-line-number\" data-line-number=\"9195\"></td>\n        <td id=\"LC9195\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9196\" class=\"blob-num js-line-number\" data-line-number=\"9196\"></td>\n        <td id=\"LC9196\" class=\"blob-code blob-code-inner js-file-line\">      str <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[Getter]<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>special<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9197\" class=\"blob-num js-line-number\" data-line-number=\"9197\"></td>\n        <td id=\"LC9197\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9198\" class=\"blob-num js-line-number\" data-line-number=\"9198\"></td>\n        <td id=\"LC9198\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9199\" class=\"blob-num js-line-number\" data-line-number=\"9199\"></td>\n        <td id=\"LC9199\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">desc</span>.<span class=\"pl-smi\">set</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9200\" class=\"blob-num js-line-number\" data-line-number=\"9200\"></td>\n        <td id=\"LC9200\" class=\"blob-code blob-code-inner js-file-line\">      str <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[Setter]<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>special<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9201\" class=\"blob-num js-line-number\" data-line-number=\"9201\"></td>\n        <td id=\"LC9201\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9202\" class=\"blob-num js-line-number\" data-line-number=\"9202\"></td>\n        <td id=\"LC9202\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9203\" class=\"blob-num js-line-number\" data-line-number=\"9203\"></td>\n        <td id=\"LC9203\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">hasOwnProperty</span>(visibleKeys, key)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9204\" class=\"blob-num js-line-number\" data-line-number=\"9204\"></td>\n        <td id=\"LC9204\" class=\"blob-code blob-code-inner js-file-line\">    name <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> key <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9205\" class=\"blob-num js-line-number\" data-line-number=\"9205\"></td>\n        <td id=\"LC9205\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9206\" class=\"blob-num js-line-number\" data-line-number=\"9206\"></td>\n        <td id=\"LC9206\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>str) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9207\" class=\"blob-num js-line-number\" data-line-number=\"9207\"></td>\n        <td id=\"LC9207\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">ctx</span>.<span class=\"pl-smi\">seen</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-smi\">desc</span>.<span class=\"pl-c1\">value</span>) <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9208\" class=\"blob-num js-line-number\" data-line-number=\"9208\"></td>\n        <td id=\"LC9208\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isNull</span>(recurseTimes)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9209\" class=\"blob-num js-line-number\" data-line-number=\"9209\"></td>\n        <td id=\"LC9209\" class=\"blob-code blob-code-inner js-file-line\">        str <span class=\"pl-k\">=</span> <span class=\"pl-en\">formatValue</span>(ctx, <span class=\"pl-smi\">desc</span>.<span class=\"pl-c1\">value</span>, <span class=\"pl-c1\">null</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9210\" class=\"blob-num js-line-number\" data-line-number=\"9210\"></td>\n        <td id=\"LC9210\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9211\" class=\"blob-num js-line-number\" data-line-number=\"9211\"></td>\n        <td id=\"LC9211\" class=\"blob-code blob-code-inner js-file-line\">        str <span class=\"pl-k\">=</span> <span class=\"pl-en\">formatValue</span>(ctx, <span class=\"pl-smi\">desc</span>.<span class=\"pl-c1\">value</span>, recurseTimes <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9212\" class=\"blob-num js-line-number\" data-line-number=\"9212\"></td>\n        <td id=\"LC9212\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9213\" class=\"blob-num js-line-number\" data-line-number=\"9213\"></td>\n        <td id=\"LC9213\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">&gt;</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9214\" class=\"blob-num js-line-number\" data-line-number=\"9214\"></td>\n        <td id=\"LC9214\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (array) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9215\" class=\"blob-num js-line-number\" data-line-number=\"9215\"></td>\n        <td id=\"LC9215\" class=\"blob-code blob-code-inner js-file-line\">          str <span class=\"pl-k\">=</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-en\">map</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">line</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9216\" class=\"blob-num js-line-number\" data-line-number=\"9216\"></td>\n        <td id=\"LC9216\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> line;</td>\n      </tr>\n      <tr>\n        <td id=\"L9217\" class=\"blob-num js-line-number\" data-line-number=\"9217\"></td>\n        <td id=\"LC9217\" class=\"blob-code blob-code-inner js-file-line\">          }).<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">2</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9218\" class=\"blob-num js-line-number\" data-line-number=\"9218\"></td>\n        <td id=\"LC9218\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9219\" class=\"blob-num js-line-number\" data-line-number=\"9219\"></td>\n        <td id=\"LC9219\" class=\"blob-code blob-code-inner js-file-line\">          str <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">split</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-en\">map</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">line</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9220\" class=\"blob-num js-line-number\" data-line-number=\"9220\"></td>\n        <td id=\"LC9220\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>   <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> line;</td>\n      </tr>\n      <tr>\n        <td id=\"L9221\" class=\"blob-num js-line-number\" data-line-number=\"9221\"></td>\n        <td id=\"LC9221\" class=\"blob-code blob-code-inner js-file-line\">          }).<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9222\" class=\"blob-num js-line-number\" data-line-number=\"9222\"></td>\n        <td id=\"LC9222\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L9223\" class=\"blob-num js-line-number\" data-line-number=\"9223\"></td>\n        <td id=\"LC9223\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9224\" class=\"blob-num js-line-number\" data-line-number=\"9224\"></td>\n        <td id=\"LC9224\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9225\" class=\"blob-num js-line-number\" data-line-number=\"9225\"></td>\n        <td id=\"LC9225\" class=\"blob-code blob-code-inner js-file-line\">      str <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[Circular]<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>special<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9226\" class=\"blob-num js-line-number\" data-line-number=\"9226\"></td>\n        <td id=\"LC9226\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9227\" class=\"blob-num js-line-number\" data-line-number=\"9227\"></td>\n        <td id=\"LC9227\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9228\" class=\"blob-num js-line-number\" data-line-number=\"9228\"></td>\n        <td id=\"LC9228\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isUndefined</span>(name)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9229\" class=\"blob-num js-line-number\" data-line-number=\"9229\"></td>\n        <td id=\"LC9229\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (array <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\d</span><span class=\"pl-k\">+</span><span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9230\" class=\"blob-num js-line-number\" data-line-number=\"9230\"></td>\n        <td id=\"LC9230\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> str;</td>\n      </tr>\n      <tr>\n        <td id=\"L9231\" class=\"blob-num js-line-number\" data-line-number=\"9231\"></td>\n        <td id=\"LC9231\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9232\" class=\"blob-num js-line-number\" data-line-number=\"9232\"></td>\n        <td id=\"LC9232\" class=\"blob-code blob-code-inner js-file-line\">    name <span class=\"pl-k\">=</span> <span class=\"pl-c1\">JSON</span>.<span class=\"pl-en\">stringify</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> key);</td>\n      </tr>\n      <tr>\n        <td id=\"L9233\" class=\"blob-num js-line-number\" data-line-number=\"9233\"></td>\n        <td id=\"LC9233\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span>&quot;(<span class=\"pl-c1\">[<span class=\"pl-c1\">a-zA-Z</span>_][<span class=\"pl-c1\">a-zA-Z</span>_<span class=\"pl-c1\">0-9</span>]</span><span class=\"pl-k\">*</span>)&quot;<span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9234\" class=\"blob-num js-line-number\" data-line-number=\"9234\"></td>\n        <td id=\"LC9234\" class=\"blob-code blob-code-inner js-file-line\">      name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-c1\">1</span>, <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">2</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9235\" class=\"blob-num js-line-number\" data-line-number=\"9235\"></td>\n        <td id=\"LC9235\" class=\"blob-code blob-code-inner js-file-line\">      name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(name, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>name<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9236\" class=\"blob-num js-line-number\" data-line-number=\"9236\"></td>\n        <td id=\"LC9236\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9237\" class=\"blob-num js-line-number\" data-line-number=\"9237\"></td>\n        <td id=\"LC9237\" class=\"blob-code blob-code-inner js-file-line\">      name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>&#39;<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span><span class=\"pl-cce\">\\\\</span>&#39;<span class=\"pl-pds\">&quot;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L9238\" class=\"blob-num js-line-number\" data-line-number=\"9238\"></td>\n        <td id=\"LC9238\" class=\"blob-code blob-code-inner js-file-line\">                 .<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\\\</span>&quot;<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L9239\" class=\"blob-num js-line-number\" data-line-number=\"9239\"></td>\n        <td id=\"LC9239\" class=\"blob-code blob-code-inner js-file-line\">                 .<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>(<span class=\"pl-k\">^</span>&quot;<span class=\"pl-k\">|</span>&quot;<span class=\"pl-k\">$</span>)<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>&#39;<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9240\" class=\"blob-num js-line-number\" data-line-number=\"9240\"></td>\n        <td id=\"LC9240\" class=\"blob-code blob-code-inner js-file-line\">      name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ctx</span>.<span class=\"pl-en\">stylize</span>(name, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9241\" class=\"blob-num js-line-number\" data-line-number=\"9241\"></td>\n        <td id=\"LC9241\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9242\" class=\"blob-num js-line-number\" data-line-number=\"9242\"></td>\n        <td id=\"LC9242\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9243\" class=\"blob-num js-line-number\" data-line-number=\"9243\"></td>\n        <td id=\"LC9243\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9244\" class=\"blob-num js-line-number\" data-line-number=\"9244\"></td>\n        <td id=\"LC9244\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> name <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>: <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> str;</td>\n      </tr>\n      <tr>\n        <td id=\"L9245\" class=\"blob-num js-line-number\" data-line-number=\"9245\"></td>\n        <td id=\"LC9245\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9246\" class=\"blob-num js-line-number\" data-line-number=\"9246\"></td>\n        <td id=\"LC9246\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9247\" class=\"blob-num js-line-number\" data-line-number=\"9247\"></td>\n        <td id=\"LC9247\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9248\" class=\"blob-num js-line-number\" data-line-number=\"9248\"></td>\n        <td id=\"LC9248\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">reduceToSingleString</span>(<span class=\"pl-smi\">output</span>, <span class=\"pl-smi\">base</span>, <span class=\"pl-smi\">braces</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9249\" class=\"blob-num js-line-number\" data-line-number=\"9249\"></td>\n        <td id=\"LC9249\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> numLinesEst <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9250\" class=\"blob-num js-line-number\" data-line-number=\"9250\"></td>\n        <td id=\"LC9250\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">output</span>.<span class=\"pl-en\">reduce</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">prev</span>, <span class=\"pl-smi\">cur</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9251\" class=\"blob-num js-line-number\" data-line-number=\"9251\"></td>\n        <td id=\"LC9251\" class=\"blob-code blob-code-inner js-file-line\">    numLinesEst<span class=\"pl-k\">++</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9252\" class=\"blob-num js-line-number\" data-line-number=\"9252\"></td>\n        <td id=\"LC9252\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">cur</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">&gt;=</span> <span class=\"pl-c1\">0</span>) numLinesEst<span class=\"pl-k\">++</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9253\" class=\"blob-num js-line-number\" data-line-number=\"9253\"></td>\n        <td id=\"LC9253\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> prev <span class=\"pl-k\">+</span> <span class=\"pl-smi\">cur</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\u</span>001b<span class=\"pl-cce\">\\[</span><span class=\"pl-c1\">\\d\\d</span><span class=\"pl-k\">?</span>m<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">length</span> <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9254\" class=\"blob-num js-line-number\" data-line-number=\"9254\"></td>\n        <td id=\"LC9254\" class=\"blob-code blob-code-inner js-file-line\">  }, <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9255\" class=\"blob-num js-line-number\" data-line-number=\"9255\"></td>\n        <td id=\"LC9255\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9256\" class=\"blob-num js-line-number\" data-line-number=\"9256\"></td>\n        <td id=\"LC9256\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (length <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">60</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9257\" class=\"blob-num js-line-number\" data-line-number=\"9257\"></td>\n        <td id=\"LC9257\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> braces[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9258\" class=\"blob-num js-line-number\" data-line-number=\"9258\"></td>\n        <td id=\"LC9258\" class=\"blob-code blob-code-inner js-file-line\">           (base <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> base <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span> <span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9259\" class=\"blob-num js-line-number\" data-line-number=\"9259\"></td>\n        <td id=\"LC9259\" class=\"blob-code blob-code-inner js-file-line\">           <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9260\" class=\"blob-num js-line-number\" data-line-number=\"9260\"></td>\n        <td id=\"LC9260\" class=\"blob-code blob-code-inner js-file-line\">           <span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>,<span class=\"pl-cce\">\\n</span>  <span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9261\" class=\"blob-num js-line-number\" data-line-number=\"9261\"></td>\n        <td id=\"LC9261\" class=\"blob-code blob-code-inner js-file-line\">           <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9262\" class=\"blob-num js-line-number\" data-line-number=\"9262\"></td>\n        <td id=\"LC9262\" class=\"blob-code blob-code-inner js-file-line\">           braces[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L9263\" class=\"blob-num js-line-number\" data-line-number=\"9263\"></td>\n        <td id=\"LC9263\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9264\" class=\"blob-num js-line-number\" data-line-number=\"9264\"></td>\n        <td id=\"LC9264\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9265\" class=\"blob-num js-line-number\" data-line-number=\"9265\"></td>\n        <td id=\"LC9265\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> braces[<span class=\"pl-c1\">0</span>] <span class=\"pl-k\">+</span> base <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">output</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>, <span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> braces[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L9266\" class=\"blob-num js-line-number\" data-line-number=\"9266\"></td>\n        <td id=\"LC9266\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9267\" class=\"blob-num js-line-number\" data-line-number=\"9267\"></td>\n        <td id=\"LC9267\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9268\" class=\"blob-num js-line-number\" data-line-number=\"9268\"></td>\n        <td id=\"LC9268\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9269\" class=\"blob-num js-line-number\" data-line-number=\"9269\"></td>\n        <td id=\"LC9269\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isArray</span>(<span class=\"pl-smi\">ar</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9270\" class=\"blob-num js-line-number\" data-line-number=\"9270\"></td>\n        <td id=\"LC9270\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">Array</span>.<span class=\"pl-en\">isArray</span>(ar);</td>\n      </tr>\n      <tr>\n        <td id=\"L9271\" class=\"blob-num js-line-number\" data-line-number=\"9271\"></td>\n        <td id=\"LC9271\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9272\" class=\"blob-num js-line-number\" data-line-number=\"9272\"></td>\n        <td id=\"LC9272\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isArray</span> <span class=\"pl-k\">=</span> isArray;</td>\n      </tr>\n      <tr>\n        <td id=\"L9273\" class=\"blob-num js-line-number\" data-line-number=\"9273\"></td>\n        <td id=\"LC9273\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9274\" class=\"blob-num js-line-number\" data-line-number=\"9274\"></td>\n        <td id=\"LC9274\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isBoolean</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9275\" class=\"blob-num js-line-number\" data-line-number=\"9275\"></td>\n        <td id=\"LC9275\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9276\" class=\"blob-num js-line-number\" data-line-number=\"9276\"></td>\n        <td id=\"LC9276\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9277\" class=\"blob-num js-line-number\" data-line-number=\"9277\"></td>\n        <td id=\"LC9277\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isBoolean</span> <span class=\"pl-k\">=</span> isBoolean;</td>\n      </tr>\n      <tr>\n        <td id=\"L9278\" class=\"blob-num js-line-number\" data-line-number=\"9278\"></td>\n        <td id=\"LC9278\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9279\" class=\"blob-num js-line-number\" data-line-number=\"9279\"></td>\n        <td id=\"LC9279\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isNull</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9280\" class=\"blob-num js-line-number\" data-line-number=\"9280\"></td>\n        <td id=\"LC9280\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9281\" class=\"blob-num js-line-number\" data-line-number=\"9281\"></td>\n        <td id=\"LC9281\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9282\" class=\"blob-num js-line-number\" data-line-number=\"9282\"></td>\n        <td id=\"LC9282\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isNull</span> <span class=\"pl-k\">=</span> isNull;</td>\n      </tr>\n      <tr>\n        <td id=\"L9283\" class=\"blob-num js-line-number\" data-line-number=\"9283\"></td>\n        <td id=\"LC9283\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9284\" class=\"blob-num js-line-number\" data-line-number=\"9284\"></td>\n        <td id=\"LC9284\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isNullOrUndefined</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9285\" class=\"blob-num js-line-number\" data-line-number=\"9285\"></td>\n        <td id=\"LC9285\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> arg <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9286\" class=\"blob-num js-line-number\" data-line-number=\"9286\"></td>\n        <td id=\"LC9286\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9287\" class=\"blob-num js-line-number\" data-line-number=\"9287\"></td>\n        <td id=\"LC9287\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isNullOrUndefined</span> <span class=\"pl-k\">=</span> isNullOrUndefined;</td>\n      </tr>\n      <tr>\n        <td id=\"L9288\" class=\"blob-num js-line-number\" data-line-number=\"9288\"></td>\n        <td id=\"LC9288\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9289\" class=\"blob-num js-line-number\" data-line-number=\"9289\"></td>\n        <td id=\"LC9289\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isNumber</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9290\" class=\"blob-num js-line-number\" data-line-number=\"9290\"></td>\n        <td id=\"LC9290\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9291\" class=\"blob-num js-line-number\" data-line-number=\"9291\"></td>\n        <td id=\"LC9291\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9292\" class=\"blob-num js-line-number\" data-line-number=\"9292\"></td>\n        <td id=\"LC9292\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isNumber</span> <span class=\"pl-k\">=</span> isNumber;</td>\n      </tr>\n      <tr>\n        <td id=\"L9293\" class=\"blob-num js-line-number\" data-line-number=\"9293\"></td>\n        <td id=\"LC9293\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9294\" class=\"blob-num js-line-number\" data-line-number=\"9294\"></td>\n        <td id=\"LC9294\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isString</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9295\" class=\"blob-num js-line-number\" data-line-number=\"9295\"></td>\n        <td id=\"LC9295\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9296\" class=\"blob-num js-line-number\" data-line-number=\"9296\"></td>\n        <td id=\"LC9296\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9297\" class=\"blob-num js-line-number\" data-line-number=\"9297\"></td>\n        <td id=\"LC9297\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isString</span> <span class=\"pl-k\">=</span> isString;</td>\n      </tr>\n      <tr>\n        <td id=\"L9298\" class=\"blob-num js-line-number\" data-line-number=\"9298\"></td>\n        <td id=\"LC9298\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9299\" class=\"blob-num js-line-number\" data-line-number=\"9299\"></td>\n        <td id=\"LC9299\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isSymbol</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9300\" class=\"blob-num js-line-number\" data-line-number=\"9300\"></td>\n        <td id=\"LC9300\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>symbol<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9301\" class=\"blob-num js-line-number\" data-line-number=\"9301\"></td>\n        <td id=\"LC9301\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9302\" class=\"blob-num js-line-number\" data-line-number=\"9302\"></td>\n        <td id=\"LC9302\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isSymbol</span> <span class=\"pl-k\">=</span> isSymbol;</td>\n      </tr>\n      <tr>\n        <td id=\"L9303\" class=\"blob-num js-line-number\" data-line-number=\"9303\"></td>\n        <td id=\"LC9303\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9304\" class=\"blob-num js-line-number\" data-line-number=\"9304\"></td>\n        <td id=\"LC9304\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isUndefined</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9305\" class=\"blob-num js-line-number\" data-line-number=\"9305\"></td>\n        <td id=\"LC9305\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9306\" class=\"blob-num js-line-number\" data-line-number=\"9306\"></td>\n        <td id=\"LC9306\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9307\" class=\"blob-num js-line-number\" data-line-number=\"9307\"></td>\n        <td id=\"LC9307\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isUndefined</span> <span class=\"pl-k\">=</span> isUndefined;</td>\n      </tr>\n      <tr>\n        <td id=\"L9308\" class=\"blob-num js-line-number\" data-line-number=\"9308\"></td>\n        <td id=\"LC9308\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9309\" class=\"blob-num js-line-number\" data-line-number=\"9309\"></td>\n        <td id=\"LC9309\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isRegExp</span>(<span class=\"pl-smi\">re</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9310\" class=\"blob-num js-line-number\" data-line-number=\"9310\"></td>\n        <td id=\"LC9310\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">isObject</span>(re) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">objectToString</span>(re) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object RegExp]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9311\" class=\"blob-num js-line-number\" data-line-number=\"9311\"></td>\n        <td id=\"LC9311\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9312\" class=\"blob-num js-line-number\" data-line-number=\"9312\"></td>\n        <td id=\"LC9312\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isRegExp</span> <span class=\"pl-k\">=</span> isRegExp;</td>\n      </tr>\n      <tr>\n        <td id=\"L9313\" class=\"blob-num js-line-number\" data-line-number=\"9313\"></td>\n        <td id=\"LC9313\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9314\" class=\"blob-num js-line-number\" data-line-number=\"9314\"></td>\n        <td id=\"LC9314\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isObject</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9315\" class=\"blob-num js-line-number\" data-line-number=\"9315\"></td>\n        <td id=\"LC9315\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> arg <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9316\" class=\"blob-num js-line-number\" data-line-number=\"9316\"></td>\n        <td id=\"LC9316\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9317\" class=\"blob-num js-line-number\" data-line-number=\"9317\"></td>\n        <td id=\"LC9317\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isObject</span> <span class=\"pl-k\">=</span> isObject;</td>\n      </tr>\n      <tr>\n        <td id=\"L9318\" class=\"blob-num js-line-number\" data-line-number=\"9318\"></td>\n        <td id=\"LC9318\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9319\" class=\"blob-num js-line-number\" data-line-number=\"9319\"></td>\n        <td id=\"LC9319\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isDate</span>(<span class=\"pl-smi\">d</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9320\" class=\"blob-num js-line-number\" data-line-number=\"9320\"></td>\n        <td id=\"LC9320\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">isObject</span>(d) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">objectToString</span>(d) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Date]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9321\" class=\"blob-num js-line-number\" data-line-number=\"9321\"></td>\n        <td id=\"LC9321\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9322\" class=\"blob-num js-line-number\" data-line-number=\"9322\"></td>\n        <td id=\"LC9322\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isDate</span> <span class=\"pl-k\">=</span> isDate;</td>\n      </tr>\n      <tr>\n        <td id=\"L9323\" class=\"blob-num js-line-number\" data-line-number=\"9323\"></td>\n        <td id=\"LC9323\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9324\" class=\"blob-num js-line-number\" data-line-number=\"9324\"></td>\n        <td id=\"LC9324\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isError</span>(<span class=\"pl-smi\">e</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9325\" class=\"blob-num js-line-number\" data-line-number=\"9325\"></td>\n        <td id=\"LC9325\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">isObject</span>(e) <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9326\" class=\"blob-num js-line-number\" data-line-number=\"9326\"></td>\n        <td id=\"LC9326\" class=\"blob-code blob-code-inner js-file-line\">      (<span class=\"pl-en\">objectToString</span>(e) <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Error]<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> e <span class=\"pl-k\">instanceof</span> Error);</td>\n      </tr>\n      <tr>\n        <td id=\"L9327\" class=\"blob-num js-line-number\" data-line-number=\"9327\"></td>\n        <td id=\"LC9327\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9328\" class=\"blob-num js-line-number\" data-line-number=\"9328\"></td>\n        <td id=\"LC9328\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isError</span> <span class=\"pl-k\">=</span> isError;</td>\n      </tr>\n      <tr>\n        <td id=\"L9329\" class=\"blob-num js-line-number\" data-line-number=\"9329\"></td>\n        <td id=\"LC9329\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9330\" class=\"blob-num js-line-number\" data-line-number=\"9330\"></td>\n        <td id=\"LC9330\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isFunction</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9331\" class=\"blob-num js-line-number\" data-line-number=\"9331\"></td>\n        <td id=\"LC9331\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9332\" class=\"blob-num js-line-number\" data-line-number=\"9332\"></td>\n        <td id=\"LC9332\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9333\" class=\"blob-num js-line-number\" data-line-number=\"9333\"></td>\n        <td id=\"LC9333\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isFunction</span> <span class=\"pl-k\">=</span> isFunction;</td>\n      </tr>\n      <tr>\n        <td id=\"L9334\" class=\"blob-num js-line-number\" data-line-number=\"9334\"></td>\n        <td id=\"LC9334\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9335\" class=\"blob-num js-line-number\" data-line-number=\"9335\"></td>\n        <td id=\"LC9335\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isPrimitive</span>(<span class=\"pl-smi\">arg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9336\" class=\"blob-num js-line-number\" data-line-number=\"9336\"></td>\n        <td id=\"LC9336\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9337\" class=\"blob-num js-line-number\" data-line-number=\"9337\"></td>\n        <td id=\"LC9337\" class=\"blob-code blob-code-inner js-file-line\">         <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>boolean<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9338\" class=\"blob-num js-line-number\" data-line-number=\"9338\"></td>\n        <td id=\"LC9338\" class=\"blob-code blob-code-inner js-file-line\">         <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9339\" class=\"blob-num js-line-number\" data-line-number=\"9339\"></td>\n        <td id=\"LC9339\" class=\"blob-code blob-code-inner js-file-line\">         <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9340\" class=\"blob-num js-line-number\" data-line-number=\"9340\"></td>\n        <td id=\"LC9340\" class=\"blob-code blob-code-inner js-file-line\">         <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>symbol<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span>  <span class=\"pl-c\">// ES6 symbol</span></td>\n      </tr>\n      <tr>\n        <td id=\"L9341\" class=\"blob-num js-line-number\" data-line-number=\"9341\"></td>\n        <td id=\"LC9341\" class=\"blob-code blob-code-inner js-file-line\">         <span class=\"pl-k\">typeof</span> arg <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9342\" class=\"blob-num js-line-number\" data-line-number=\"9342\"></td>\n        <td id=\"LC9342\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9343\" class=\"blob-num js-line-number\" data-line-number=\"9343\"></td>\n        <td id=\"LC9343\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isPrimitive</span> <span class=\"pl-k\">=</span> isPrimitive;</td>\n      </tr>\n      <tr>\n        <td id=\"L9344\" class=\"blob-num js-line-number\" data-line-number=\"9344\"></td>\n        <td id=\"LC9344\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9345\" class=\"blob-num js-line-number\" data-line-number=\"9345\"></td>\n        <td id=\"LC9345\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">isBuffer</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./support/isBuffer<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9346\" class=\"blob-num js-line-number\" data-line-number=\"9346\"></td>\n        <td id=\"LC9346\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9347\" class=\"blob-num js-line-number\" data-line-number=\"9347\"></td>\n        <td id=\"LC9347\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">objectToString</span>(<span class=\"pl-smi\">o</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9348\" class=\"blob-num js-line-number\" data-line-number=\"9348\"></td>\n        <td id=\"LC9348\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>.<span class=\"pl-c1\">call</span>(o);</td>\n      </tr>\n      <tr>\n        <td id=\"L9349\" class=\"blob-num js-line-number\" data-line-number=\"9349\"></td>\n        <td id=\"LC9349\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9350\" class=\"blob-num js-line-number\" data-line-number=\"9350\"></td>\n        <td id=\"LC9350\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9351\" class=\"blob-num js-line-number\" data-line-number=\"9351\"></td>\n        <td id=\"LC9351\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9352\" class=\"blob-num js-line-number\" data-line-number=\"9352\"></td>\n        <td id=\"LC9352\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">pad</span>(<span class=\"pl-smi\">n</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9353\" class=\"blob-num js-line-number\" data-line-number=\"9353\"></td>\n        <td id=\"LC9353\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> n <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">10</span> <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>0<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">n</span>.<span class=\"pl-c1\">toString</span>(<span class=\"pl-c1\">10</span>) <span class=\"pl-k\">:</span> <span class=\"pl-smi\">n</span>.<span class=\"pl-c1\">toString</span>(<span class=\"pl-c1\">10</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9354\" class=\"blob-num js-line-number\" data-line-number=\"9354\"></td>\n        <td id=\"LC9354\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9355\" class=\"blob-num js-line-number\" data-line-number=\"9355\"></td>\n        <td id=\"LC9355\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9356\" class=\"blob-num js-line-number\" data-line-number=\"9356\"></td>\n        <td id=\"LC9356\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9357\" class=\"blob-num js-line-number\" data-line-number=\"9357\"></td>\n        <td id=\"LC9357\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> months <span class=\"pl-k\">=</span> [<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Jan<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Feb<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Mar<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Apr<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>May<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Jun<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Jul<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Aug<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Sep<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L9358\" class=\"blob-num js-line-number\" data-line-number=\"9358\"></td>\n        <td id=\"LC9358\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Oct<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Nov<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>Dec<span class=\"pl-pds\">&#39;</span></span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L9359\" class=\"blob-num js-line-number\" data-line-number=\"9359\"></td>\n        <td id=\"LC9359\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9360\" class=\"blob-num js-line-number\" data-line-number=\"9360\"></td>\n        <td id=\"LC9360\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">timestamp</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9361\" class=\"blob-num js-line-number\" data-line-number=\"9361\"></td>\n        <td id=\"LC9361\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> d <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Date</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L9362\" class=\"blob-num js-line-number\" data-line-number=\"9362\"></td>\n        <td id=\"LC9362\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> time <span class=\"pl-k\">=</span> [<span class=\"pl-en\">pad</span>(<span class=\"pl-smi\">d</span>.<span class=\"pl-c1\">getHours</span>()),</td>\n      </tr>\n      <tr>\n        <td id=\"L9363\" class=\"blob-num js-line-number\" data-line-number=\"9363\"></td>\n        <td id=\"LC9363\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-en\">pad</span>(<span class=\"pl-smi\">d</span>.<span class=\"pl-c1\">getMinutes</span>()),</td>\n      </tr>\n      <tr>\n        <td id=\"L9364\" class=\"blob-num js-line-number\" data-line-number=\"9364\"></td>\n        <td id=\"LC9364\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-en\">pad</span>(<span class=\"pl-smi\">d</span>.<span class=\"pl-c1\">getSeconds</span>())].<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>:<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9365\" class=\"blob-num js-line-number\" data-line-number=\"9365\"></td>\n        <td id=\"LC9365\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> [<span class=\"pl-smi\">d</span>.<span class=\"pl-c1\">getDate</span>(), months[<span class=\"pl-smi\">d</span>.<span class=\"pl-c1\">getMonth</span>()], time].<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9366\" class=\"blob-num js-line-number\" data-line-number=\"9366\"></td>\n        <td id=\"LC9366\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9367\" class=\"blob-num js-line-number\" data-line-number=\"9367\"></td>\n        <td id=\"LC9367\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9368\" class=\"blob-num js-line-number\" data-line-number=\"9368\"></td>\n        <td id=\"LC9368\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9369\" class=\"blob-num js-line-number\" data-line-number=\"9369\"></td>\n        <td id=\"LC9369\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">log</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9370\" class=\"blob-num js-line-number\" data-line-number=\"9370\"></td>\n        <td id=\"LC9370\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">console</span>.<span class=\"pl-c1\">log</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>%s - %s<span class=\"pl-pds\">&#39;</span></span>, <span class=\"pl-en\">timestamp</span>(), <span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">format</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-c1\">exports</span>, <span class=\"pl-v\">arguments</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L9371\" class=\"blob-num js-line-number\" data-line-number=\"9371\"></td>\n        <td id=\"LC9371\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L9372\" class=\"blob-num js-line-number\" data-line-number=\"9372\"></td>\n        <td id=\"LC9372\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9373\" class=\"blob-num js-line-number\" data-line-number=\"9373\"></td>\n        <td id=\"LC9373\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9374\" class=\"blob-num js-line-number\" data-line-number=\"9374\"></td>\n        <td id=\"LC9374\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9375\" class=\"blob-num js-line-number\" data-line-number=\"9375\"></td>\n        <td id=\"LC9375\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-smi\">inherits</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>inherits<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9376\" class=\"blob-num js-line-number\" data-line-number=\"9376\"></td>\n        <td id=\"LC9376\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9377\" class=\"blob-num js-line-number\" data-line-number=\"9377\"></td>\n        <td id=\"LC9377\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">exports</span>.<span class=\"pl-en\">_extend</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">origin</span>, <span class=\"pl-smi\">add</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9378\" class=\"blob-num js-line-number\" data-line-number=\"9378\"></td>\n        <td id=\"LC9378\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>add <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-en\">isObject</span>(add)) <span class=\"pl-k\">return</span> origin;</td>\n      </tr>\n      <tr>\n        <td id=\"L9379\" class=\"blob-num js-line-number\" data-line-number=\"9379\"></td>\n        <td id=\"LC9379\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9380\" class=\"blob-num js-line-number\" data-line-number=\"9380\"></td>\n        <td id=\"LC9380\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> keys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-en\">keys</span>(add);</td>\n      </tr>\n      <tr>\n        <td id=\"L9381\" class=\"blob-num js-line-number\" data-line-number=\"9381\"></td>\n        <td id=\"LC9381\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> i <span class=\"pl-k\">=</span> <span class=\"pl-smi\">keys</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9382\" class=\"blob-num js-line-number\" data-line-number=\"9382\"></td>\n        <td id=\"LC9382\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (i<span class=\"pl-k\">--</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9383\" class=\"blob-num js-line-number\" data-line-number=\"9383\"></td>\n        <td id=\"LC9383\" class=\"blob-code blob-code-inner js-file-line\">    origin[keys[i]] <span class=\"pl-k\">=</span> add[keys[i]];</td>\n      </tr>\n      <tr>\n        <td id=\"L9384\" class=\"blob-num js-line-number\" data-line-number=\"9384\"></td>\n        <td id=\"LC9384\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L9385\" class=\"blob-num js-line-number\" data-line-number=\"9385\"></td>\n        <td id=\"LC9385\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> origin;</td>\n      </tr>\n      <tr>\n        <td id=\"L9386\" class=\"blob-num js-line-number\" data-line-number=\"9386\"></td>\n        <td id=\"LC9386\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L9387\" class=\"blob-num js-line-number\" data-line-number=\"9387\"></td>\n        <td id=\"LC9387\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9388\" class=\"blob-num js-line-number\" data-line-number=\"9388\"></td>\n        <td id=\"LC9388\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">hasOwnProperty</span>(<span class=\"pl-smi\">obj</span>, <span class=\"pl-smi\">prop</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9389\" class=\"blob-num js-line-number\" data-line-number=\"9389\"></td>\n        <td id=\"LC9389\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(obj, prop);</td>\n      </tr>\n      <tr>\n        <td id=\"L9390\" class=\"blob-num js-line-number\" data-line-number=\"9390\"></td>\n        <td id=\"LC9390\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L9391\" class=\"blob-num js-line-number\" data-line-number=\"9391\"></td>\n        <td id=\"LC9391\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9392\" class=\"blob-num js-line-number\" data-line-number=\"9392\"></td>\n        <td id=\"LC9392\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>,<span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>FWaASH<span class=\"pl-pds\">&quot;</span></span>),<span class=\"pl-k\">typeof</span> self <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> self <span class=\"pl-k\">:</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">:</span> {})</td>\n      </tr>\n      <tr>\n        <td id=\"L9393\" class=\"blob-num js-line-number\" data-line-number=\"9393\"></td>\n        <td id=\"LC9393\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./support/isBuffer<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">64</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>FWaASH<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">58</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>inherits<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">57</span>}],<span class=\"pl-c1\">66</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L9394\" class=\"blob-num js-line-number\" data-line-number=\"9394\"></td>\n        <td id=\"LC9394\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9395\" class=\"blob-num js-line-number\" data-line-number=\"9395\"></td>\n        <td id=\"LC9395\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLAttribute, create;</td>\n      </tr>\n      <tr>\n        <td id=\"L9396\" class=\"blob-num js-line-number\" data-line-number=\"9396\"></td>\n        <td id=\"LC9396\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9397\" class=\"blob-num js-line-number\" data-line-number=\"9397\"></td>\n        <td id=\"LC9397\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9398\" class=\"blob-num js-line-number\" data-line-number=\"9398\"></td>\n        <td id=\"LC9398\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9399\" class=\"blob-num js-line-number\" data-line-number=\"9399\"></td>\n        <td id=\"LC9399\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLAttribute <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9400\" class=\"blob-num js-line-number\" data-line-number=\"9400\"></td>\n        <td id=\"LC9400\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLAttribute</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9401\" class=\"blob-num js-line-number\" data-line-number=\"9401\"></td>\n        <td id=\"LC9401\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-smi\">stringify</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9402\" class=\"blob-num js-line-number\" data-line-number=\"9402\"></td>\n        <td id=\"LC9402\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9403\" class=\"blob-num js-line-number\" data-line-number=\"9403\"></td>\n        <td id=\"LC9403\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing attribute name of element <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">name</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9404\" class=\"blob-num js-line-number\" data-line-number=\"9404\"></td>\n        <td id=\"LC9404\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9405\" class=\"blob-num js-line-number\" data-line-number=\"9405\"></td>\n        <td id=\"LC9405\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9406\" class=\"blob-num js-line-number\" data-line-number=\"9406\"></td>\n        <td id=\"LC9406\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing attribute value for attribute <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> name <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span> of element <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">name</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9407\" class=\"blob-num js-line-number\" data-line-number=\"9407\"></td>\n        <td id=\"LC9407\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9408\" class=\"blob-num js-line-number\" data-line-number=\"9408\"></td>\n        <td id=\"LC9408\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">attName</span>(name);</td>\n      </tr>\n      <tr>\n        <td id=\"L9409\" class=\"blob-num js-line-number\" data-line-number=\"9409\"></td>\n        <td id=\"LC9409\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">attValue</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9410\" class=\"blob-num js-line-number\" data-line-number=\"9410\"></td>\n        <td id=\"LC9410\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9411\" class=\"blob-num js-line-number\" data-line-number=\"9411\"></td>\n        <td id=\"LC9411\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9412\" class=\"blob-num js-line-number\" data-line-number=\"9412\"></td>\n        <td id=\"LC9412\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLAttribute</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9413\" class=\"blob-num js-line-number\" data-line-number=\"9413\"></td>\n        <td id=\"LC9413\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLAttribute</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9414\" class=\"blob-num js-line-number\" data-line-number=\"9414\"></td>\n        <td id=\"LC9414\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9415\" class=\"blob-num js-line-number\" data-line-number=\"9415\"></td>\n        <td id=\"LC9415\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9416\" class=\"blob-num js-line-number\" data-line-number=\"9416\"></td>\n        <td id=\"LC9416\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLAttribute</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9417\" class=\"blob-num js-line-number\" data-line-number=\"9417\"></td>\n        <td id=\"LC9417\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>=&quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9418\" class=\"blob-num js-line-number\" data-line-number=\"9418\"></td>\n        <td id=\"LC9418\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9419\" class=\"blob-num js-line-number\" data-line-number=\"9419\"></td>\n        <td id=\"LC9419\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9420\" class=\"blob-num js-line-number\" data-line-number=\"9420\"></td>\n        <td id=\"LC9420\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLAttribute;</td>\n      </tr>\n      <tr>\n        <td id=\"L9421\" class=\"blob-num js-line-number\" data-line-number=\"9421\"></td>\n        <td id=\"LC9421\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9422\" class=\"blob-num js-line-number\" data-line-number=\"9422\"></td>\n        <td id=\"LC9422\" class=\"blob-code blob-code-inner js-file-line\">  })();</td>\n      </tr>\n      <tr>\n        <td id=\"L9423\" class=\"blob-num js-line-number\" data-line-number=\"9423\"></td>\n        <td id=\"LC9423\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9424\" class=\"blob-num js-line-number\" data-line-number=\"9424\"></td>\n        <td id=\"LC9424\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9425\" class=\"blob-num js-line-number\" data-line-number=\"9425\"></td>\n        <td id=\"LC9425\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9426\" class=\"blob-num js-line-number\" data-line-number=\"9426\"></td>\n        <td id=\"LC9426\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">67</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L9427\" class=\"blob-num js-line-number\" data-line-number=\"9427\"></td>\n        <td id=\"LC9427\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9428\" class=\"blob-num js-line-number\" data-line-number=\"9428\"></td>\n        <td id=\"LC9428\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLBuilder, XMLDeclaration, XMLDocType, XMLElement, XMLStringifier;</td>\n      </tr>\n      <tr>\n        <td id=\"L9429\" class=\"blob-num js-line-number\" data-line-number=\"9429\"></td>\n        <td id=\"LC9429\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9430\" class=\"blob-num js-line-number\" data-line-number=\"9430\"></td>\n        <td id=\"LC9430\" class=\"blob-code blob-code-inner js-file-line\">  XMLStringifier <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLStringifier<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9431\" class=\"blob-num js-line-number\" data-line-number=\"9431\"></td>\n        <td id=\"LC9431\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9432\" class=\"blob-num js-line-number\" data-line-number=\"9432\"></td>\n        <td id=\"LC9432\" class=\"blob-code blob-code-inner js-file-line\">  XMLDeclaration <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLDeclaration<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9433\" class=\"blob-num js-line-number\" data-line-number=\"9433\"></td>\n        <td id=\"LC9433\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9434\" class=\"blob-num js-line-number\" data-line-number=\"9434\"></td>\n        <td id=\"LC9434\" class=\"blob-code blob-code-inner js-file-line\">  XMLDocType <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLDocType<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9435\" class=\"blob-num js-line-number\" data-line-number=\"9435\"></td>\n        <td id=\"LC9435\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9436\" class=\"blob-num js-line-number\" data-line-number=\"9436\"></td>\n        <td id=\"LC9436\" class=\"blob-code blob-code-inner js-file-line\">  XMLElement <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLElement<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9437\" class=\"blob-num js-line-number\" data-line-number=\"9437\"></td>\n        <td id=\"LC9437\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9438\" class=\"blob-num js-line-number\" data-line-number=\"9438\"></td>\n        <td id=\"LC9438\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLBuilder <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9439\" class=\"blob-num js-line-number\" data-line-number=\"9439\"></td>\n        <td id=\"LC9439\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLBuilder</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9440\" class=\"blob-num js-line-number\" data-line-number=\"9440\"></td>\n        <td id=\"LC9440\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> root, temp;</td>\n      </tr>\n      <tr>\n        <td id=\"L9441\" class=\"blob-num js-line-number\" data-line-number=\"9441\"></td>\n        <td id=\"LC9441\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9442\" class=\"blob-num js-line-number\" data-line-number=\"9442\"></td>\n        <td id=\"LC9442\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Root element needs a name<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9443\" class=\"blob-num js-line-number\" data-line-number=\"9443\"></td>\n        <td id=\"LC9443\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9444\" class=\"blob-num js-line-number\" data-line-number=\"9444\"></td>\n        <td id=\"LC9444\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (options <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9445\" class=\"blob-num js-line-number\" data-line-number=\"9445\"></td>\n        <td id=\"LC9445\" class=\"blob-code blob-code-inner js-file-line\">        options <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L9446\" class=\"blob-num js-line-number\" data-line-number=\"9446\"></td>\n        <td id=\"LC9446\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9447\" class=\"blob-num js-line-number\" data-line-number=\"9447\"></td>\n        <td id=\"LC9447\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">options</span> <span class=\"pl-k\">=</span> options;</td>\n      </tr>\n      <tr>\n        <td id=\"L9448\" class=\"blob-num js-line-number\" data-line-number=\"9448\"></td>\n        <td id=\"LC9448\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLStringifier</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L9449\" class=\"blob-num js-line-number\" data-line-number=\"9449\"></td>\n        <td id=\"LC9449\" class=\"blob-code blob-code-inner js-file-line\">      temp <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLElement</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>doc<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9450\" class=\"blob-num js-line-number\" data-line-number=\"9450\"></td>\n        <td id=\"LC9450\" class=\"blob-code blob-code-inner js-file-line\">      root <span class=\"pl-k\">=</span> <span class=\"pl-smi\">temp</span>.<span class=\"pl-en\">element</span>(name);</td>\n      </tr>\n      <tr>\n        <td id=\"L9451\" class=\"blob-num js-line-number\" data-line-number=\"9451\"></td>\n        <td id=\"LC9451\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">root</span>.<span class=\"pl-smi\">isRoot</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9452\" class=\"blob-num js-line-number\" data-line-number=\"9452\"></td>\n        <td id=\"LC9452\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">root</span>.<span class=\"pl-smi\">documentObject</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9453\" class=\"blob-num js-line-number\" data-line-number=\"9453\"></td>\n        <td id=\"LC9453\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">rootObject</span> <span class=\"pl-k\">=</span> root;</td>\n      </tr>\n      <tr>\n        <td id=\"L9454\" class=\"blob-num js-line-number\" data-line-number=\"9454\"></td>\n        <td id=\"LC9454\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">headless</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9455\" class=\"blob-num js-line-number\" data-line-number=\"9455\"></td>\n        <td id=\"LC9455\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">root</span>.<span class=\"pl-en\">declaration</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L9456\" class=\"blob-num js-line-number\" data-line-number=\"9456\"></td>\n        <td id=\"LC9456\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> ((<span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) <span class=\"pl-k\">||</span> (<span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9457\" class=\"blob-num js-line-number\" data-line-number=\"9457\"></td>\n        <td id=\"LC9457\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-smi\">root</span>.<span class=\"pl-c1\">doctype</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L9458\" class=\"blob-num js-line-number\" data-line-number=\"9458\"></td>\n        <td id=\"LC9458\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L9459\" class=\"blob-num js-line-number\" data-line-number=\"9459\"></td>\n        <td id=\"LC9459\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9460\" class=\"blob-num js-line-number\" data-line-number=\"9460\"></td>\n        <td id=\"LC9460\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9461\" class=\"blob-num js-line-number\" data-line-number=\"9461\"></td>\n        <td id=\"LC9461\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9462\" class=\"blob-num js-line-number\" data-line-number=\"9462\"></td>\n        <td id=\"LC9462\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLBuilder</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">root</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9463\" class=\"blob-num js-line-number\" data-line-number=\"9463\"></td>\n        <td id=\"LC9463\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">rootObject</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9464\" class=\"blob-num js-line-number\" data-line-number=\"9464\"></td>\n        <td id=\"LC9464\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9465\" class=\"blob-num js-line-number\" data-line-number=\"9465\"></td>\n        <td id=\"LC9465\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9466\" class=\"blob-num js-line-number\" data-line-number=\"9466\"></td>\n        <td id=\"LC9466\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLBuilder</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">end</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9467\" class=\"blob-num js-line-number\" data-line-number=\"9467\"></td>\n        <td id=\"LC9467\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">toString</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L9468\" class=\"blob-num js-line-number\" data-line-number=\"9468\"></td>\n        <td id=\"LC9468\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9469\" class=\"blob-num js-line-number\" data-line-number=\"9469\"></td>\n        <td id=\"LC9469\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9470\" class=\"blob-num js-line-number\" data-line-number=\"9470\"></td>\n        <td id=\"LC9470\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLBuilder</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9471\" class=\"blob-num js-line-number\" data-line-number=\"9471\"></td>\n        <td id=\"LC9471\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> indent, newline, offset, pretty, r, ref, ref1, ref2;</td>\n      </tr>\n      <tr>\n        <td id=\"L9472\" class=\"blob-num js-line-number\" data-line-number=\"9472\"></td>\n        <td id=\"LC9472\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9473\" class=\"blob-num js-line-number\" data-line-number=\"9473\"></td>\n        <td id=\"LC9473\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9474\" class=\"blob-num js-line-number\" data-line-number=\"9474\"></td>\n        <td id=\"LC9474\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9475\" class=\"blob-num js-line-number\" data-line-number=\"9475\"></td>\n        <td id=\"LC9475\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9476\" class=\"blob-num js-line-number\" data-line-number=\"9476\"></td>\n        <td id=\"LC9476\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9477\" class=\"blob-num js-line-number\" data-line-number=\"9477\"></td>\n        <td id=\"LC9477\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">xmldec</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9478\" class=\"blob-num js-line-number\" data-line-number=\"9478\"></td>\n        <td id=\"LC9478\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">xmldec</span>.<span class=\"pl-c1\">toString</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L9479\" class=\"blob-num js-line-number\" data-line-number=\"9479\"></td>\n        <td id=\"LC9479\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9480\" class=\"blob-num js-line-number\" data-line-number=\"9480\"></td>\n        <td id=\"LC9480\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">doctype</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9481\" class=\"blob-num js-line-number\" data-line-number=\"9481\"></td>\n        <td id=\"LC9481\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">doctype</span>.<span class=\"pl-c1\">toString</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L9482\" class=\"blob-num js-line-number\" data-line-number=\"9482\"></td>\n        <td id=\"LC9482\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9483\" class=\"blob-num js-line-number\" data-line-number=\"9483\"></td>\n        <td id=\"LC9483\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">rootObject</span>.<span class=\"pl-c1\">toString</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L9484\" class=\"blob-num js-line-number\" data-line-number=\"9484\"></td>\n        <td id=\"LC9484\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-k\">-</span><span class=\"pl-smi\">newline</span>.<span class=\"pl-c1\">length</span>) <span class=\"pl-k\">===</span> newline) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9485\" class=\"blob-num js-line-number\" data-line-number=\"9485\"></td>\n        <td id=\"LC9485\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">=</span> <span class=\"pl-smi\">r</span>.<span class=\"pl-c1\">slice</span>(<span class=\"pl-c1\">0</span>, <span class=\"pl-k\">-</span><span class=\"pl-smi\">newline</span>.<span class=\"pl-c1\">length</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9486\" class=\"blob-num js-line-number\" data-line-number=\"9486\"></td>\n        <td id=\"LC9486\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9487\" class=\"blob-num js-line-number\" data-line-number=\"9487\"></td>\n        <td id=\"LC9487\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L9488\" class=\"blob-num js-line-number\" data-line-number=\"9488\"></td>\n        <td id=\"LC9488\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9489\" class=\"blob-num js-line-number\" data-line-number=\"9489\"></td>\n        <td id=\"LC9489\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9490\" class=\"blob-num js-line-number\" data-line-number=\"9490\"></td>\n        <td id=\"LC9490\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLBuilder;</td>\n      </tr>\n      <tr>\n        <td id=\"L9491\" class=\"blob-num js-line-number\" data-line-number=\"9491\"></td>\n        <td id=\"LC9491\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9492\" class=\"blob-num js-line-number\" data-line-number=\"9492\"></td>\n        <td id=\"LC9492\" class=\"blob-code blob-code-inner js-file-line\">  })();</td>\n      </tr>\n      <tr>\n        <td id=\"L9493\" class=\"blob-num js-line-number\" data-line-number=\"9493\"></td>\n        <td id=\"LC9493\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9494\" class=\"blob-num js-line-number\" data-line-number=\"9494\"></td>\n        <td id=\"LC9494\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9495\" class=\"blob-num js-line-number\" data-line-number=\"9495\"></td>\n        <td id=\"LC9495\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9496\" class=\"blob-num js-line-number\" data-line-number=\"9496\"></td>\n        <td id=\"LC9496\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLDeclaration<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">74</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLDocType<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">75</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLElement<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">76</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLStringifier<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">80</span>}],<span class=\"pl-c1\">68</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L9497\" class=\"blob-num js-line-number\" data-line-number=\"9497\"></td>\n        <td id=\"LC9497\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9498\" class=\"blob-num js-line-number\" data-line-number=\"9498\"></td>\n        <td id=\"LC9498\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLCData, XMLNode, create,</td>\n      </tr>\n      <tr>\n        <td id=\"L9499\" class=\"blob-num js-line-number\" data-line-number=\"9499\"></td>\n        <td id=\"LC9499\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">child</span>, <span class=\"pl-smi\">parent</span>) { <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> key <span class=\"pl-k\">in</span> parent) { <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(parent, key)) child[key] <span class=\"pl-k\">=</span> parent[key]; } <span class=\"pl-k\">function</span> <span class=\"pl-en\">ctor</span>() { <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span> <span class=\"pl-k\">=</span> child; } <span class=\"pl-smi\">ctor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">ctor</span>(); <span class=\"pl-smi\">child</span>.<span class=\"pl-smi\">__super__</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-k\">return</span> child; },</td>\n      </tr>\n      <tr>\n        <td id=\"L9500\" class=\"blob-num js-line-number\" data-line-number=\"9500\"></td>\n        <td id=\"LC9500\" class=\"blob-code blob-code-inner js-file-line\">    hasProp <span class=\"pl-k\">=</span> {}.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9501\" class=\"blob-num js-line-number\" data-line-number=\"9501\"></td>\n        <td id=\"LC9501\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9502\" class=\"blob-num js-line-number\" data-line-number=\"9502\"></td>\n        <td id=\"LC9502\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9503\" class=\"blob-num js-line-number\" data-line-number=\"9503\"></td>\n        <td id=\"LC9503\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9504\" class=\"blob-num js-line-number\" data-line-number=\"9504\"></td>\n        <td id=\"LC9504\" class=\"blob-code blob-code-inner js-file-line\">  XMLNode <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLNode<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9505\" class=\"blob-num js-line-number\" data-line-number=\"9505\"></td>\n        <td id=\"LC9505\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9506\" class=\"blob-num js-line-number\" data-line-number=\"9506\"></td>\n        <td id=\"LC9506\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLCData <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">superClass</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9507\" class=\"blob-num js-line-number\" data-line-number=\"9507\"></td>\n        <td id=\"LC9507\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span>(XMLCData, superClass);</td>\n      </tr>\n      <tr>\n        <td id=\"L9508\" class=\"blob-num js-line-number\" data-line-number=\"9508\"></td>\n        <td id=\"LC9508\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9509\" class=\"blob-num js-line-number\" data-line-number=\"9509\"></td>\n        <td id=\"LC9509\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLCData</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9510\" class=\"blob-num js-line-number\" data-line-number=\"9510\"></td>\n        <td id=\"LC9510\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">XMLCData</span>.<span class=\"pl-smi\">__super__</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, parent);</td>\n      </tr>\n      <tr>\n        <td id=\"L9511\" class=\"blob-num js-line-number\" data-line-number=\"9511\"></td>\n        <td id=\"LC9511\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (text <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9512\" class=\"blob-num js-line-number\" data-line-number=\"9512\"></td>\n        <td id=\"LC9512\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing CDATA text<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9513\" class=\"blob-num js-line-number\" data-line-number=\"9513\"></td>\n        <td id=\"LC9513\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9514\" class=\"blob-num js-line-number\" data-line-number=\"9514\"></td>\n        <td id=\"LC9514\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">text</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">cdata</span>(text);</td>\n      </tr>\n      <tr>\n        <td id=\"L9515\" class=\"blob-num js-line-number\" data-line-number=\"9515\"></td>\n        <td id=\"LC9515\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9516\" class=\"blob-num js-line-number\" data-line-number=\"9516\"></td>\n        <td id=\"LC9516\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9517\" class=\"blob-num js-line-number\" data-line-number=\"9517\"></td>\n        <td id=\"LC9517\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLCData</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9518\" class=\"blob-num js-line-number\" data-line-number=\"9518\"></td>\n        <td id=\"LC9518\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLCData</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9519\" class=\"blob-num js-line-number\" data-line-number=\"9519\"></td>\n        <td id=\"LC9519\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9520\" class=\"blob-num js-line-number\" data-line-number=\"9520\"></td>\n        <td id=\"LC9520\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9521\" class=\"blob-num js-line-number\" data-line-number=\"9521\"></td>\n        <td id=\"LC9521\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLCData</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9522\" class=\"blob-num js-line-number\" data-line-number=\"9522\"></td>\n        <td id=\"LC9522\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> indent, newline, offset, pretty, r, ref, ref1, ref2, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9523\" class=\"blob-num js-line-number\" data-line-number=\"9523\"></td>\n        <td id=\"LC9523\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9524\" class=\"blob-num js-line-number\" data-line-number=\"9524\"></td>\n        <td id=\"LC9524\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9525\" class=\"blob-num js-line-number\" data-line-number=\"9525\"></td>\n        <td id=\"LC9525\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9526\" class=\"blob-num js-line-number\" data-line-number=\"9526\"></td>\n        <td id=\"LC9526\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9527\" class=\"blob-num js-line-number\" data-line-number=\"9527\"></td>\n        <td id=\"LC9527\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9528\" class=\"blob-num js-line-number\" data-line-number=\"9528\"></td>\n        <td id=\"LC9528\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L9529\" class=\"blob-num js-line-number\" data-line-number=\"9529\"></td>\n        <td id=\"LC9529\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9530\" class=\"blob-num js-line-number\" data-line-number=\"9530\"></td>\n        <td id=\"LC9530\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9531\" class=\"blob-num js-line-number\" data-line-number=\"9531\"></td>\n        <td id=\"LC9531\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9532\" class=\"blob-num js-line-number\" data-line-number=\"9532\"></td>\n        <td id=\"LC9532\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9533\" class=\"blob-num js-line-number\" data-line-number=\"9533\"></td>\n        <td id=\"LC9533\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;![CDATA[<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">text</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>]]&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9534\" class=\"blob-num js-line-number\" data-line-number=\"9534\"></td>\n        <td id=\"LC9534\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9535\" class=\"blob-num js-line-number\" data-line-number=\"9535\"></td>\n        <td id=\"LC9535\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L9536\" class=\"blob-num js-line-number\" data-line-number=\"9536\"></td>\n        <td id=\"LC9536\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9537\" class=\"blob-num js-line-number\" data-line-number=\"9537\"></td>\n        <td id=\"LC9537\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L9538\" class=\"blob-num js-line-number\" data-line-number=\"9538\"></td>\n        <td id=\"LC9538\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9539\" class=\"blob-num js-line-number\" data-line-number=\"9539\"></td>\n        <td id=\"LC9539\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9540\" class=\"blob-num js-line-number\" data-line-number=\"9540\"></td>\n        <td id=\"LC9540\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLCData;</td>\n      </tr>\n      <tr>\n        <td id=\"L9541\" class=\"blob-num js-line-number\" data-line-number=\"9541\"></td>\n        <td id=\"LC9541\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9542\" class=\"blob-num js-line-number\" data-line-number=\"9542\"></td>\n        <td id=\"LC9542\" class=\"blob-code blob-code-inner js-file-line\">  })(XMLNode);</td>\n      </tr>\n      <tr>\n        <td id=\"L9543\" class=\"blob-num js-line-number\" data-line-number=\"9543\"></td>\n        <td id=\"LC9543\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9544\" class=\"blob-num js-line-number\" data-line-number=\"9544\"></td>\n        <td id=\"LC9544\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9545\" class=\"blob-num js-line-number\" data-line-number=\"9545\"></td>\n        <td id=\"LC9545\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9546\" class=\"blob-num js-line-number\" data-line-number=\"9546\"></td>\n        <td id=\"LC9546\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLNode<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">77</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">69</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L9547\" class=\"blob-num js-line-number\" data-line-number=\"9547\"></td>\n        <td id=\"LC9547\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9548\" class=\"blob-num js-line-number\" data-line-number=\"9548\"></td>\n        <td id=\"LC9548\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLComment, XMLNode, create,</td>\n      </tr>\n      <tr>\n        <td id=\"L9549\" class=\"blob-num js-line-number\" data-line-number=\"9549\"></td>\n        <td id=\"LC9549\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">child</span>, <span class=\"pl-smi\">parent</span>) { <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> key <span class=\"pl-k\">in</span> parent) { <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(parent, key)) child[key] <span class=\"pl-k\">=</span> parent[key]; } <span class=\"pl-k\">function</span> <span class=\"pl-en\">ctor</span>() { <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span> <span class=\"pl-k\">=</span> child; } <span class=\"pl-smi\">ctor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">ctor</span>(); <span class=\"pl-smi\">child</span>.<span class=\"pl-smi\">__super__</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-k\">return</span> child; },</td>\n      </tr>\n      <tr>\n        <td id=\"L9550\" class=\"blob-num js-line-number\" data-line-number=\"9550\"></td>\n        <td id=\"LC9550\" class=\"blob-code blob-code-inner js-file-line\">    hasProp <span class=\"pl-k\">=</span> {}.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9551\" class=\"blob-num js-line-number\" data-line-number=\"9551\"></td>\n        <td id=\"LC9551\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9552\" class=\"blob-num js-line-number\" data-line-number=\"9552\"></td>\n        <td id=\"LC9552\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9553\" class=\"blob-num js-line-number\" data-line-number=\"9553\"></td>\n        <td id=\"LC9553\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9554\" class=\"blob-num js-line-number\" data-line-number=\"9554\"></td>\n        <td id=\"LC9554\" class=\"blob-code blob-code-inner js-file-line\">  XMLNode <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLNode<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9555\" class=\"blob-num js-line-number\" data-line-number=\"9555\"></td>\n        <td id=\"LC9555\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9556\" class=\"blob-num js-line-number\" data-line-number=\"9556\"></td>\n        <td id=\"LC9556\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLComment <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">superClass</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9557\" class=\"blob-num js-line-number\" data-line-number=\"9557\"></td>\n        <td id=\"LC9557\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span>(XMLComment, superClass);</td>\n      </tr>\n      <tr>\n        <td id=\"L9558\" class=\"blob-num js-line-number\" data-line-number=\"9558\"></td>\n        <td id=\"LC9558\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9559\" class=\"blob-num js-line-number\" data-line-number=\"9559\"></td>\n        <td id=\"LC9559\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLComment</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9560\" class=\"blob-num js-line-number\" data-line-number=\"9560\"></td>\n        <td id=\"LC9560\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">XMLComment</span>.<span class=\"pl-smi\">__super__</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, parent);</td>\n      </tr>\n      <tr>\n        <td id=\"L9561\" class=\"blob-num js-line-number\" data-line-number=\"9561\"></td>\n        <td id=\"LC9561\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (text <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9562\" class=\"blob-num js-line-number\" data-line-number=\"9562\"></td>\n        <td id=\"LC9562\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing comment text<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9563\" class=\"blob-num js-line-number\" data-line-number=\"9563\"></td>\n        <td id=\"LC9563\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9564\" class=\"blob-num js-line-number\" data-line-number=\"9564\"></td>\n        <td id=\"LC9564\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">text</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">comment</span>(text);</td>\n      </tr>\n      <tr>\n        <td id=\"L9565\" class=\"blob-num js-line-number\" data-line-number=\"9565\"></td>\n        <td id=\"LC9565\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9566\" class=\"blob-num js-line-number\" data-line-number=\"9566\"></td>\n        <td id=\"LC9566\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9567\" class=\"blob-num js-line-number\" data-line-number=\"9567\"></td>\n        <td id=\"LC9567\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLComment</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9568\" class=\"blob-num js-line-number\" data-line-number=\"9568\"></td>\n        <td id=\"LC9568\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLComment</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9569\" class=\"blob-num js-line-number\" data-line-number=\"9569\"></td>\n        <td id=\"LC9569\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9570\" class=\"blob-num js-line-number\" data-line-number=\"9570\"></td>\n        <td id=\"LC9570\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9571\" class=\"blob-num js-line-number\" data-line-number=\"9571\"></td>\n        <td id=\"LC9571\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLComment</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9572\" class=\"blob-num js-line-number\" data-line-number=\"9572\"></td>\n        <td id=\"LC9572\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> indent, newline, offset, pretty, r, ref, ref1, ref2, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9573\" class=\"blob-num js-line-number\" data-line-number=\"9573\"></td>\n        <td id=\"LC9573\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9574\" class=\"blob-num js-line-number\" data-line-number=\"9574\"></td>\n        <td id=\"LC9574\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9575\" class=\"blob-num js-line-number\" data-line-number=\"9575\"></td>\n        <td id=\"LC9575\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9576\" class=\"blob-num js-line-number\" data-line-number=\"9576\"></td>\n        <td id=\"LC9576\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9577\" class=\"blob-num js-line-number\" data-line-number=\"9577\"></td>\n        <td id=\"LC9577\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9578\" class=\"blob-num js-line-number\" data-line-number=\"9578\"></td>\n        <td id=\"LC9578\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L9579\" class=\"blob-num js-line-number\" data-line-number=\"9579\"></td>\n        <td id=\"LC9579\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9580\" class=\"blob-num js-line-number\" data-line-number=\"9580\"></td>\n        <td id=\"LC9580\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9581\" class=\"blob-num js-line-number\" data-line-number=\"9581\"></td>\n        <td id=\"LC9581\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9582\" class=\"blob-num js-line-number\" data-line-number=\"9582\"></td>\n        <td id=\"LC9582\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9583\" class=\"blob-num js-line-number\" data-line-number=\"9583\"></td>\n        <td id=\"LC9583\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;!-- <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">text</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> --&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9584\" class=\"blob-num js-line-number\" data-line-number=\"9584\"></td>\n        <td id=\"LC9584\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9585\" class=\"blob-num js-line-number\" data-line-number=\"9585\"></td>\n        <td id=\"LC9585\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L9586\" class=\"blob-num js-line-number\" data-line-number=\"9586\"></td>\n        <td id=\"LC9586\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9587\" class=\"blob-num js-line-number\" data-line-number=\"9587\"></td>\n        <td id=\"LC9587\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L9588\" class=\"blob-num js-line-number\" data-line-number=\"9588\"></td>\n        <td id=\"LC9588\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9589\" class=\"blob-num js-line-number\" data-line-number=\"9589\"></td>\n        <td id=\"LC9589\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9590\" class=\"blob-num js-line-number\" data-line-number=\"9590\"></td>\n        <td id=\"LC9590\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLComment;</td>\n      </tr>\n      <tr>\n        <td id=\"L9591\" class=\"blob-num js-line-number\" data-line-number=\"9591\"></td>\n        <td id=\"LC9591\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9592\" class=\"blob-num js-line-number\" data-line-number=\"9592\"></td>\n        <td id=\"LC9592\" class=\"blob-code blob-code-inner js-file-line\">  })(XMLNode);</td>\n      </tr>\n      <tr>\n        <td id=\"L9593\" class=\"blob-num js-line-number\" data-line-number=\"9593\"></td>\n        <td id=\"LC9593\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9594\" class=\"blob-num js-line-number\" data-line-number=\"9594\"></td>\n        <td id=\"LC9594\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9595\" class=\"blob-num js-line-number\" data-line-number=\"9595\"></td>\n        <td id=\"LC9595\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9596\" class=\"blob-num js-line-number\" data-line-number=\"9596\"></td>\n        <td id=\"LC9596\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLNode<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">77</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">70</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L9597\" class=\"blob-num js-line-number\" data-line-number=\"9597\"></td>\n        <td id=\"LC9597\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9598\" class=\"blob-num js-line-number\" data-line-number=\"9598\"></td>\n        <td id=\"LC9598\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLDTDAttList, create;</td>\n      </tr>\n      <tr>\n        <td id=\"L9599\" class=\"blob-num js-line-number\" data-line-number=\"9599\"></td>\n        <td id=\"LC9599\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9600\" class=\"blob-num js-line-number\" data-line-number=\"9600\"></td>\n        <td id=\"LC9600\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9601\" class=\"blob-num js-line-number\" data-line-number=\"9601\"></td>\n        <td id=\"LC9601\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9602\" class=\"blob-num js-line-number\" data-line-number=\"9602\"></td>\n        <td id=\"LC9602\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLDTDAttList <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9603\" class=\"blob-num js-line-number\" data-line-number=\"9603\"></td>\n        <td id=\"LC9603\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLDTDAttList</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">elementName</span>, <span class=\"pl-smi\">attributeName</span>, <span class=\"pl-smi\">attributeType</span>, <span class=\"pl-smi\">defaultValueType</span>, <span class=\"pl-smi\">defaultValue</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9604\" class=\"blob-num js-line-number\" data-line-number=\"9604\"></td>\n        <td id=\"LC9604\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-smi\">stringify</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9605\" class=\"blob-num js-line-number\" data-line-number=\"9605\"></td>\n        <td id=\"LC9605\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (elementName <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9606\" class=\"blob-num js-line-number\" data-line-number=\"9606\"></td>\n        <td id=\"LC9606\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing DTD element name<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9607\" class=\"blob-num js-line-number\" data-line-number=\"9607\"></td>\n        <td id=\"LC9607\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9608\" class=\"blob-num js-line-number\" data-line-number=\"9608\"></td>\n        <td id=\"LC9608\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (attributeName <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9609\" class=\"blob-num js-line-number\" data-line-number=\"9609\"></td>\n        <td id=\"LC9609\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing DTD attribute name<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9610\" class=\"blob-num js-line-number\" data-line-number=\"9610\"></td>\n        <td id=\"LC9610\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9611\" class=\"blob-num js-line-number\" data-line-number=\"9611\"></td>\n        <td id=\"LC9611\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>attributeType) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9612\" class=\"blob-num js-line-number\" data-line-number=\"9612\"></td>\n        <td id=\"LC9612\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing DTD attribute type<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9613\" class=\"blob-num js-line-number\" data-line-number=\"9613\"></td>\n        <td id=\"LC9613\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9614\" class=\"blob-num js-line-number\" data-line-number=\"9614\"></td>\n        <td id=\"LC9614\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>defaultValueType) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9615\" class=\"blob-num js-line-number\" data-line-number=\"9615\"></td>\n        <td id=\"LC9615\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing DTD attribute default<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9616\" class=\"blob-num js-line-number\" data-line-number=\"9616\"></td>\n        <td id=\"LC9616\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9617\" class=\"blob-num js-line-number\" data-line-number=\"9617\"></td>\n        <td id=\"LC9617\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">defaultValueType</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9618\" class=\"blob-num js-line-number\" data-line-number=\"9618\"></td>\n        <td id=\"LC9618\" class=\"blob-code blob-code-inner js-file-line\">        defaultValueType <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> defaultValueType;</td>\n      </tr>\n      <tr>\n        <td id=\"L9619\" class=\"blob-num js-line-number\" data-line-number=\"9619\"></td>\n        <td id=\"LC9619\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9620\" class=\"blob-num js-line-number\" data-line-number=\"9620\"></td>\n        <td id=\"LC9620\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">defaultValueType</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span>(#REQUIRED<span class=\"pl-k\">|</span>#IMPLIED<span class=\"pl-k\">|</span>#FIXED<span class=\"pl-k\">|</span>#DEFAULT)<span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9621\" class=\"blob-num js-line-number\" data-line-number=\"9621\"></td>\n        <td id=\"LC9621\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9622\" class=\"blob-num js-line-number\" data-line-number=\"9622\"></td>\n        <td id=\"LC9622\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9623\" class=\"blob-num js-line-number\" data-line-number=\"9623\"></td>\n        <td id=\"LC9623\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (defaultValue <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">defaultValueType</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span>(#FIXED<span class=\"pl-k\">|</span>#DEFAULT)<span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9624\" class=\"blob-num js-line-number\" data-line-number=\"9624\"></td>\n        <td id=\"LC9624\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Default value only applies to #FIXED or #DEFAULT<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9625\" class=\"blob-num js-line-number\" data-line-number=\"9625\"></td>\n        <td id=\"LC9625\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9626\" class=\"blob-num js-line-number\" data-line-number=\"9626\"></td>\n        <td id=\"LC9626\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">elementName</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">eleName</span>(elementName);</td>\n      </tr>\n      <tr>\n        <td id=\"L9627\" class=\"blob-num js-line-number\" data-line-number=\"9627\"></td>\n        <td id=\"LC9627\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">attributeName</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">attName</span>(attributeName);</td>\n      </tr>\n      <tr>\n        <td id=\"L9628\" class=\"blob-num js-line-number\" data-line-number=\"9628\"></td>\n        <td id=\"LC9628\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">attributeType</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">dtdAttType</span>(attributeType);</td>\n      </tr>\n      <tr>\n        <td id=\"L9629\" class=\"blob-num js-line-number\" data-line-number=\"9629\"></td>\n        <td id=\"LC9629\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">defaultValue</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">dtdAttDefault</span>(defaultValue);</td>\n      </tr>\n      <tr>\n        <td id=\"L9630\" class=\"blob-num js-line-number\" data-line-number=\"9630\"></td>\n        <td id=\"LC9630\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">defaultValueType</span> <span class=\"pl-k\">=</span> defaultValueType;</td>\n      </tr>\n      <tr>\n        <td id=\"L9631\" class=\"blob-num js-line-number\" data-line-number=\"9631\"></td>\n        <td id=\"LC9631\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9632\" class=\"blob-num js-line-number\" data-line-number=\"9632\"></td>\n        <td id=\"LC9632\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9633\" class=\"blob-num js-line-number\" data-line-number=\"9633\"></td>\n        <td id=\"LC9633\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDTDAttList</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9634\" class=\"blob-num js-line-number\" data-line-number=\"9634\"></td>\n        <td id=\"LC9634\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLDTDAttList</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9635\" class=\"blob-num js-line-number\" data-line-number=\"9635\"></td>\n        <td id=\"LC9635\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9636\" class=\"blob-num js-line-number\" data-line-number=\"9636\"></td>\n        <td id=\"LC9636\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9637\" class=\"blob-num js-line-number\" data-line-number=\"9637\"></td>\n        <td id=\"LC9637\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDTDAttList</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9638\" class=\"blob-num js-line-number\" data-line-number=\"9638\"></td>\n        <td id=\"LC9638\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> indent, newline, offset, pretty, r, ref, ref1, ref2, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9639\" class=\"blob-num js-line-number\" data-line-number=\"9639\"></td>\n        <td id=\"LC9639\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9640\" class=\"blob-num js-line-number\" data-line-number=\"9640\"></td>\n        <td id=\"LC9640\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9641\" class=\"blob-num js-line-number\" data-line-number=\"9641\"></td>\n        <td id=\"LC9641\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9642\" class=\"blob-num js-line-number\" data-line-number=\"9642\"></td>\n        <td id=\"LC9642\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9643\" class=\"blob-num js-line-number\" data-line-number=\"9643\"></td>\n        <td id=\"LC9643\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9644\" class=\"blob-num js-line-number\" data-line-number=\"9644\"></td>\n        <td id=\"LC9644\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L9645\" class=\"blob-num js-line-number\" data-line-number=\"9645\"></td>\n        <td id=\"LC9645\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9646\" class=\"blob-num js-line-number\" data-line-number=\"9646\"></td>\n        <td id=\"LC9646\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9647\" class=\"blob-num js-line-number\" data-line-number=\"9647\"></td>\n        <td id=\"LC9647\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9648\" class=\"blob-num js-line-number\" data-line-number=\"9648\"></td>\n        <td id=\"LC9648\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9649\" class=\"blob-num js-line-number\" data-line-number=\"9649\"></td>\n        <td id=\"LC9649\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;!ATTLIST <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">elementName</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">attributeName</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">attributeType</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9650\" class=\"blob-num js-line-number\" data-line-number=\"9650\"></td>\n        <td id=\"LC9650\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">defaultValueType</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#DEFAULT<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9651\" class=\"blob-num js-line-number\" data-line-number=\"9651\"></td>\n        <td id=\"LC9651\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">defaultValueType</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9652\" class=\"blob-num js-line-number\" data-line-number=\"9652\"></td>\n        <td id=\"LC9652\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9653\" class=\"blob-num js-line-number\" data-line-number=\"9653\"></td>\n        <td id=\"LC9653\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">defaultValue</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9654\" class=\"blob-num js-line-number\" data-line-number=\"9654\"></td>\n        <td id=\"LC9654\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">defaultValue</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9655\" class=\"blob-num js-line-number\" data-line-number=\"9655\"></td>\n        <td id=\"LC9655\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9656\" class=\"blob-num js-line-number\" data-line-number=\"9656\"></td>\n        <td id=\"LC9656\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9657\" class=\"blob-num js-line-number\" data-line-number=\"9657\"></td>\n        <td id=\"LC9657\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9658\" class=\"blob-num js-line-number\" data-line-number=\"9658\"></td>\n        <td id=\"LC9658\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L9659\" class=\"blob-num js-line-number\" data-line-number=\"9659\"></td>\n        <td id=\"LC9659\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9660\" class=\"blob-num js-line-number\" data-line-number=\"9660\"></td>\n        <td id=\"LC9660\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L9661\" class=\"blob-num js-line-number\" data-line-number=\"9661\"></td>\n        <td id=\"LC9661\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9662\" class=\"blob-num js-line-number\" data-line-number=\"9662\"></td>\n        <td id=\"LC9662\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9663\" class=\"blob-num js-line-number\" data-line-number=\"9663\"></td>\n        <td id=\"LC9663\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLDTDAttList;</td>\n      </tr>\n      <tr>\n        <td id=\"L9664\" class=\"blob-num js-line-number\" data-line-number=\"9664\"></td>\n        <td id=\"LC9664\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9665\" class=\"blob-num js-line-number\" data-line-number=\"9665\"></td>\n        <td id=\"LC9665\" class=\"blob-code blob-code-inner js-file-line\">  })();</td>\n      </tr>\n      <tr>\n        <td id=\"L9666\" class=\"blob-num js-line-number\" data-line-number=\"9666\"></td>\n        <td id=\"LC9666\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9667\" class=\"blob-num js-line-number\" data-line-number=\"9667\"></td>\n        <td id=\"LC9667\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9668\" class=\"blob-num js-line-number\" data-line-number=\"9668\"></td>\n        <td id=\"LC9668\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9669\" class=\"blob-num js-line-number\" data-line-number=\"9669\"></td>\n        <td id=\"LC9669\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">71</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L9670\" class=\"blob-num js-line-number\" data-line-number=\"9670\"></td>\n        <td id=\"LC9670\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9671\" class=\"blob-num js-line-number\" data-line-number=\"9671\"></td>\n        <td id=\"LC9671\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLDTDElement, create, isArray;</td>\n      </tr>\n      <tr>\n        <td id=\"L9672\" class=\"blob-num js-line-number\" data-line-number=\"9672\"></td>\n        <td id=\"LC9672\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9673\" class=\"blob-num js-line-number\" data-line-number=\"9673\"></td>\n        <td id=\"LC9673\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9674\" class=\"blob-num js-line-number\" data-line-number=\"9674\"></td>\n        <td id=\"LC9674\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9675\" class=\"blob-num js-line-number\" data-line-number=\"9675\"></td>\n        <td id=\"LC9675\" class=\"blob-code blob-code-inner js-file-line\">  isArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/lang/isArray<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9676\" class=\"blob-num js-line-number\" data-line-number=\"9676\"></td>\n        <td id=\"LC9676\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9677\" class=\"blob-num js-line-number\" data-line-number=\"9677\"></td>\n        <td id=\"LC9677\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLDTDElement <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9678\" class=\"blob-num js-line-number\" data-line-number=\"9678\"></td>\n        <td id=\"LC9678\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLDTDElement</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9679\" class=\"blob-num js-line-number\" data-line-number=\"9679\"></td>\n        <td id=\"LC9679\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-smi\">stringify</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9680\" class=\"blob-num js-line-number\" data-line-number=\"9680\"></td>\n        <td id=\"LC9680\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9681\" class=\"blob-num js-line-number\" data-line-number=\"9681\"></td>\n        <td id=\"LC9681\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing DTD element name<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9682\" class=\"blob-num js-line-number\" data-line-number=\"9682\"></td>\n        <td id=\"LC9682\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9683\" class=\"blob-num js-line-number\" data-line-number=\"9683\"></td>\n        <td id=\"LC9683\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>value) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9684\" class=\"blob-num js-line-number\" data-line-number=\"9684\"></td>\n        <td id=\"LC9684\" class=\"blob-code blob-code-inner js-file-line\">        value <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>(#PCDATA)<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9685\" class=\"blob-num js-line-number\" data-line-number=\"9685\"></td>\n        <td id=\"LC9685\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9686\" class=\"blob-num js-line-number\" data-line-number=\"9686\"></td>\n        <td id=\"LC9686\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isArray</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9687\" class=\"blob-num js-line-number\" data-line-number=\"9687\"></td>\n        <td id=\"LC9687\" class=\"blob-code blob-code-inner js-file-line\">        value <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>(<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">join</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>,<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>)<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9688\" class=\"blob-num js-line-number\" data-line-number=\"9688\"></td>\n        <td id=\"LC9688\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9689\" class=\"blob-num js-line-number\" data-line-number=\"9689\"></td>\n        <td id=\"LC9689\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">eleName</span>(name);</td>\n      </tr>\n      <tr>\n        <td id=\"L9690\" class=\"blob-num js-line-number\" data-line-number=\"9690\"></td>\n        <td id=\"LC9690\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">dtdElementValue</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9691\" class=\"blob-num js-line-number\" data-line-number=\"9691\"></td>\n        <td id=\"LC9691\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9692\" class=\"blob-num js-line-number\" data-line-number=\"9692\"></td>\n        <td id=\"LC9692\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9693\" class=\"blob-num js-line-number\" data-line-number=\"9693\"></td>\n        <td id=\"LC9693\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDTDElement</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9694\" class=\"blob-num js-line-number\" data-line-number=\"9694\"></td>\n        <td id=\"LC9694\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLDTDElement</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9695\" class=\"blob-num js-line-number\" data-line-number=\"9695\"></td>\n        <td id=\"LC9695\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9696\" class=\"blob-num js-line-number\" data-line-number=\"9696\"></td>\n        <td id=\"LC9696\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9697\" class=\"blob-num js-line-number\" data-line-number=\"9697\"></td>\n        <td id=\"LC9697\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDTDElement</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9698\" class=\"blob-num js-line-number\" data-line-number=\"9698\"></td>\n        <td id=\"LC9698\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> indent, newline, offset, pretty, r, ref, ref1, ref2, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9699\" class=\"blob-num js-line-number\" data-line-number=\"9699\"></td>\n        <td id=\"LC9699\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9700\" class=\"blob-num js-line-number\" data-line-number=\"9700\"></td>\n        <td id=\"LC9700\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9701\" class=\"blob-num js-line-number\" data-line-number=\"9701\"></td>\n        <td id=\"LC9701\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9702\" class=\"blob-num js-line-number\" data-line-number=\"9702\"></td>\n        <td id=\"LC9702\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9703\" class=\"blob-num js-line-number\" data-line-number=\"9703\"></td>\n        <td id=\"LC9703\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9704\" class=\"blob-num js-line-number\" data-line-number=\"9704\"></td>\n        <td id=\"LC9704\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L9705\" class=\"blob-num js-line-number\" data-line-number=\"9705\"></td>\n        <td id=\"LC9705\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9706\" class=\"blob-num js-line-number\" data-line-number=\"9706\"></td>\n        <td id=\"LC9706\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9707\" class=\"blob-num js-line-number\" data-line-number=\"9707\"></td>\n        <td id=\"LC9707\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9708\" class=\"blob-num js-line-number\" data-line-number=\"9708\"></td>\n        <td id=\"LC9708\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9709\" class=\"blob-num js-line-number\" data-line-number=\"9709\"></td>\n        <td id=\"LC9709\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;!ELEMENT <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9710\" class=\"blob-num js-line-number\" data-line-number=\"9710\"></td>\n        <td id=\"LC9710\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9711\" class=\"blob-num js-line-number\" data-line-number=\"9711\"></td>\n        <td id=\"LC9711\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L9712\" class=\"blob-num js-line-number\" data-line-number=\"9712\"></td>\n        <td id=\"LC9712\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9713\" class=\"blob-num js-line-number\" data-line-number=\"9713\"></td>\n        <td id=\"LC9713\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L9714\" class=\"blob-num js-line-number\" data-line-number=\"9714\"></td>\n        <td id=\"LC9714\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9715\" class=\"blob-num js-line-number\" data-line-number=\"9715\"></td>\n        <td id=\"LC9715\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9716\" class=\"blob-num js-line-number\" data-line-number=\"9716\"></td>\n        <td id=\"LC9716\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLDTDElement;</td>\n      </tr>\n      <tr>\n        <td id=\"L9717\" class=\"blob-num js-line-number\" data-line-number=\"9717\"></td>\n        <td id=\"LC9717\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9718\" class=\"blob-num js-line-number\" data-line-number=\"9718\"></td>\n        <td id=\"LC9718\" class=\"blob-code blob-code-inner js-file-line\">  })();</td>\n      </tr>\n      <tr>\n        <td id=\"L9719\" class=\"blob-num js-line-number\" data-line-number=\"9719\"></td>\n        <td id=\"LC9719\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9720\" class=\"blob-num js-line-number\" data-line-number=\"9720\"></td>\n        <td id=\"LC9720\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9721\" class=\"blob-num js-line-number\" data-line-number=\"9721\"></td>\n        <td id=\"LC9721\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9722\" class=\"blob-num js-line-number\" data-line-number=\"9722\"></td>\n        <td id=\"LC9722\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/lang/isArray<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">117</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">72</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L9723\" class=\"blob-num js-line-number\" data-line-number=\"9723\"></td>\n        <td id=\"LC9723\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9724\" class=\"blob-num js-line-number\" data-line-number=\"9724\"></td>\n        <td id=\"LC9724\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLDTDEntity, create, isObject;</td>\n      </tr>\n      <tr>\n        <td id=\"L9725\" class=\"blob-num js-line-number\" data-line-number=\"9725\"></td>\n        <td id=\"LC9725\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9726\" class=\"blob-num js-line-number\" data-line-number=\"9726\"></td>\n        <td id=\"LC9726\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9727\" class=\"blob-num js-line-number\" data-line-number=\"9727\"></td>\n        <td id=\"LC9727\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9728\" class=\"blob-num js-line-number\" data-line-number=\"9728\"></td>\n        <td id=\"LC9728\" class=\"blob-code blob-code-inner js-file-line\">  isObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/lang/isObject<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9729\" class=\"blob-num js-line-number\" data-line-number=\"9729\"></td>\n        <td id=\"LC9729\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9730\" class=\"blob-num js-line-number\" data-line-number=\"9730\"></td>\n        <td id=\"LC9730\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLDTDEntity <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9731\" class=\"blob-num js-line-number\" data-line-number=\"9731\"></td>\n        <td id=\"LC9731\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLDTDEntity</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">pe</span>, <span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9732\" class=\"blob-num js-line-number\" data-line-number=\"9732\"></td>\n        <td id=\"LC9732\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-smi\">stringify</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9733\" class=\"blob-num js-line-number\" data-line-number=\"9733\"></td>\n        <td id=\"LC9733\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9734\" class=\"blob-num js-line-number\" data-line-number=\"9734\"></td>\n        <td id=\"LC9734\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing entity name<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9735\" class=\"blob-num js-line-number\" data-line-number=\"9735\"></td>\n        <td id=\"LC9735\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9736\" class=\"blob-num js-line-number\" data-line-number=\"9736\"></td>\n        <td id=\"LC9736\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9737\" class=\"blob-num js-line-number\" data-line-number=\"9737\"></td>\n        <td id=\"LC9737\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing entity value<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9738\" class=\"blob-num js-line-number\" data-line-number=\"9738\"></td>\n        <td id=\"LC9738\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9739\" class=\"blob-num js-line-number\" data-line-number=\"9739\"></td>\n        <td id=\"LC9739\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pe</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">!!</span>pe;</td>\n      </tr>\n      <tr>\n        <td id=\"L9740\" class=\"blob-num js-line-number\" data-line-number=\"9740\"></td>\n        <td id=\"LC9740\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">eleName</span>(name);</td>\n      </tr>\n      <tr>\n        <td id=\"L9741\" class=\"blob-num js-line-number\" data-line-number=\"9741\"></td>\n        <td id=\"LC9741\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isObject</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9742\" class=\"blob-num js-line-number\" data-line-number=\"9742\"></td>\n        <td id=\"LC9742\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">dtdEntityValue</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9743\" class=\"blob-num js-line-number\" data-line-number=\"9743\"></td>\n        <td id=\"LC9743\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9744\" class=\"blob-num js-line-number\" data-line-number=\"9744\"></td>\n        <td id=\"LC9744\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9745\" class=\"blob-num js-line-number\" data-line-number=\"9745\"></td>\n        <td id=\"LC9745\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Public and/or system identifiers are required for an external entity<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9746\" class=\"blob-num js-line-number\" data-line-number=\"9746\"></td>\n        <td id=\"LC9746\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L9747\" class=\"blob-num js-line-number\" data-line-number=\"9747\"></td>\n        <td id=\"LC9747\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9748\" class=\"blob-num js-line-number\" data-line-number=\"9748\"></td>\n        <td id=\"LC9748\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>System identifier is required for a public external entity<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9749\" class=\"blob-num js-line-number\" data-line-number=\"9749\"></td>\n        <td id=\"LC9749\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L9750\" class=\"blob-num js-line-number\" data-line-number=\"9750\"></td>\n        <td id=\"LC9750\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9751\" class=\"blob-num js-line-number\" data-line-number=\"9751\"></td>\n        <td id=\"LC9751\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">dtdPubID</span>(<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">pubID</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9752\" class=\"blob-num js-line-number\" data-line-number=\"9752\"></td>\n        <td id=\"LC9752\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L9753\" class=\"blob-num js-line-number\" data-line-number=\"9753\"></td>\n        <td id=\"LC9753\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9754\" class=\"blob-num js-line-number\" data-line-number=\"9754\"></td>\n        <td id=\"LC9754\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">dtdSysID</span>(<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">sysID</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9755\" class=\"blob-num js-line-number\" data-line-number=\"9755\"></td>\n        <td id=\"LC9755\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L9756\" class=\"blob-num js-line-number\" data-line-number=\"9756\"></td>\n        <td id=\"LC9756\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">nData</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9757\" class=\"blob-num js-line-number\" data-line-number=\"9757\"></td>\n        <td id=\"LC9757\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nData</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">dtdNData</span>(<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">nData</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9758\" class=\"blob-num js-line-number\" data-line-number=\"9758\"></td>\n        <td id=\"LC9758\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L9759\" class=\"blob-num js-line-number\" data-line-number=\"9759\"></td>\n        <td id=\"LC9759\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pe</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nData</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9760\" class=\"blob-num js-line-number\" data-line-number=\"9760\"></td>\n        <td id=\"LC9760\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Notation declaration is not allowed in a parameter entity<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9761\" class=\"blob-num js-line-number\" data-line-number=\"9761\"></td>\n        <td id=\"LC9761\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L9762\" class=\"blob-num js-line-number\" data-line-number=\"9762\"></td>\n        <td id=\"LC9762\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9763\" class=\"blob-num js-line-number\" data-line-number=\"9763\"></td>\n        <td id=\"LC9763\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9764\" class=\"blob-num js-line-number\" data-line-number=\"9764\"></td>\n        <td id=\"LC9764\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9765\" class=\"blob-num js-line-number\" data-line-number=\"9765\"></td>\n        <td id=\"LC9765\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDTDEntity</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9766\" class=\"blob-num js-line-number\" data-line-number=\"9766\"></td>\n        <td id=\"LC9766\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLDTDEntity</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9767\" class=\"blob-num js-line-number\" data-line-number=\"9767\"></td>\n        <td id=\"LC9767\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9768\" class=\"blob-num js-line-number\" data-line-number=\"9768\"></td>\n        <td id=\"LC9768\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9769\" class=\"blob-num js-line-number\" data-line-number=\"9769\"></td>\n        <td id=\"LC9769\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDTDEntity</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9770\" class=\"blob-num js-line-number\" data-line-number=\"9770\"></td>\n        <td id=\"LC9770\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> indent, newline, offset, pretty, r, ref, ref1, ref2, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9771\" class=\"blob-num js-line-number\" data-line-number=\"9771\"></td>\n        <td id=\"LC9771\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9772\" class=\"blob-num js-line-number\" data-line-number=\"9772\"></td>\n        <td id=\"LC9772\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9773\" class=\"blob-num js-line-number\" data-line-number=\"9773\"></td>\n        <td id=\"LC9773\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9774\" class=\"blob-num js-line-number\" data-line-number=\"9774\"></td>\n        <td id=\"LC9774\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9775\" class=\"blob-num js-line-number\" data-line-number=\"9775\"></td>\n        <td id=\"LC9775\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9776\" class=\"blob-num js-line-number\" data-line-number=\"9776\"></td>\n        <td id=\"LC9776\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L9777\" class=\"blob-num js-line-number\" data-line-number=\"9777\"></td>\n        <td id=\"LC9777\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9778\" class=\"blob-num js-line-number\" data-line-number=\"9778\"></td>\n        <td id=\"LC9778\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9779\" class=\"blob-num js-line-number\" data-line-number=\"9779\"></td>\n        <td id=\"LC9779\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9780\" class=\"blob-num js-line-number\" data-line-number=\"9780\"></td>\n        <td id=\"LC9780\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9781\" class=\"blob-num js-line-number\" data-line-number=\"9781\"></td>\n        <td id=\"LC9781\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;!ENTITY<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9782\" class=\"blob-num js-line-number\" data-line-number=\"9782\"></td>\n        <td id=\"LC9782\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pe</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9783\" class=\"blob-num js-line-number\" data-line-number=\"9783\"></td>\n        <td id=\"LC9783\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> %<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9784\" class=\"blob-num js-line-number\" data-line-number=\"9784\"></td>\n        <td id=\"LC9784\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9785\" class=\"blob-num js-line-number\" data-line-number=\"9785\"></td>\n        <td id=\"LC9785\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9786\" class=\"blob-num js-line-number\" data-line-number=\"9786\"></td>\n        <td id=\"LC9786\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9787\" class=\"blob-num js-line-number\" data-line-number=\"9787\"></td>\n        <td id=\"LC9787\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9788\" class=\"blob-num js-line-number\" data-line-number=\"9788\"></td>\n        <td id=\"LC9788\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L9789\" class=\"blob-num js-line-number\" data-line-number=\"9789\"></td>\n        <td id=\"LC9789\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9790\" class=\"blob-num js-line-number\" data-line-number=\"9790\"></td>\n        <td id=\"LC9790\" class=\"blob-code blob-code-inner js-file-line\">          r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> PUBLIC &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot; &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9791\" class=\"blob-num js-line-number\" data-line-number=\"9791\"></td>\n        <td id=\"LC9791\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9792\" class=\"blob-num js-line-number\" data-line-number=\"9792\"></td>\n        <td id=\"LC9792\" class=\"blob-code blob-code-inner js-file-line\">          r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> SYSTEM &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9793\" class=\"blob-num js-line-number\" data-line-number=\"9793\"></td>\n        <td id=\"LC9793\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L9794\" class=\"blob-num js-line-number\" data-line-number=\"9794\"></td>\n        <td id=\"LC9794\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nData</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9795\" class=\"blob-num js-line-number\" data-line-number=\"9795\"></td>\n        <td id=\"LC9795\" class=\"blob-code blob-code-inner js-file-line\">          r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> NDATA <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">nData</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9796\" class=\"blob-num js-line-number\" data-line-number=\"9796\"></td>\n        <td id=\"LC9796\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L9797\" class=\"blob-num js-line-number\" data-line-number=\"9797\"></td>\n        <td id=\"LC9797\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9798\" class=\"blob-num js-line-number\" data-line-number=\"9798\"></td>\n        <td id=\"LC9798\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9799\" class=\"blob-num js-line-number\" data-line-number=\"9799\"></td>\n        <td id=\"LC9799\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9800\" class=\"blob-num js-line-number\" data-line-number=\"9800\"></td>\n        <td id=\"LC9800\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L9801\" class=\"blob-num js-line-number\" data-line-number=\"9801\"></td>\n        <td id=\"LC9801\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9802\" class=\"blob-num js-line-number\" data-line-number=\"9802\"></td>\n        <td id=\"LC9802\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L9803\" class=\"blob-num js-line-number\" data-line-number=\"9803\"></td>\n        <td id=\"LC9803\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9804\" class=\"blob-num js-line-number\" data-line-number=\"9804\"></td>\n        <td id=\"LC9804\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9805\" class=\"blob-num js-line-number\" data-line-number=\"9805\"></td>\n        <td id=\"LC9805\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLDTDEntity;</td>\n      </tr>\n      <tr>\n        <td id=\"L9806\" class=\"blob-num js-line-number\" data-line-number=\"9806\"></td>\n        <td id=\"LC9806\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9807\" class=\"blob-num js-line-number\" data-line-number=\"9807\"></td>\n        <td id=\"LC9807\" class=\"blob-code blob-code-inner js-file-line\">  })();</td>\n      </tr>\n      <tr>\n        <td id=\"L9808\" class=\"blob-num js-line-number\" data-line-number=\"9808\"></td>\n        <td id=\"LC9808\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9809\" class=\"blob-num js-line-number\" data-line-number=\"9809\"></td>\n        <td id=\"LC9809\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9810\" class=\"blob-num js-line-number\" data-line-number=\"9810\"></td>\n        <td id=\"LC9810\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9811\" class=\"blob-num js-line-number\" data-line-number=\"9811\"></td>\n        <td id=\"LC9811\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/lang/isObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">121</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">73</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L9812\" class=\"blob-num js-line-number\" data-line-number=\"9812\"></td>\n        <td id=\"LC9812\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9813\" class=\"blob-num js-line-number\" data-line-number=\"9813\"></td>\n        <td id=\"LC9813\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLDTDNotation, create;</td>\n      </tr>\n      <tr>\n        <td id=\"L9814\" class=\"blob-num js-line-number\" data-line-number=\"9814\"></td>\n        <td id=\"LC9814\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9815\" class=\"blob-num js-line-number\" data-line-number=\"9815\"></td>\n        <td id=\"LC9815\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9816\" class=\"blob-num js-line-number\" data-line-number=\"9816\"></td>\n        <td id=\"LC9816\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9817\" class=\"blob-num js-line-number\" data-line-number=\"9817\"></td>\n        <td id=\"LC9817\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLDTDNotation <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9818\" class=\"blob-num js-line-number\" data-line-number=\"9818\"></td>\n        <td id=\"LC9818\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLDTDNotation</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9819\" class=\"blob-num js-line-number\" data-line-number=\"9819\"></td>\n        <td id=\"LC9819\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-smi\">stringify</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9820\" class=\"blob-num js-line-number\" data-line-number=\"9820\"></td>\n        <td id=\"LC9820\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9821\" class=\"blob-num js-line-number\" data-line-number=\"9821\"></td>\n        <td id=\"LC9821\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing notation name<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9822\" class=\"blob-num js-line-number\" data-line-number=\"9822\"></td>\n        <td id=\"LC9822\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9823\" class=\"blob-num js-line-number\" data-line-number=\"9823\"></td>\n        <td id=\"LC9823\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9824\" class=\"blob-num js-line-number\" data-line-number=\"9824\"></td>\n        <td id=\"LC9824\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Public or system identifiers are required for an external entity<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9825\" class=\"blob-num js-line-number\" data-line-number=\"9825\"></td>\n        <td id=\"LC9825\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9826\" class=\"blob-num js-line-number\" data-line-number=\"9826\"></td>\n        <td id=\"LC9826\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">eleName</span>(name);</td>\n      </tr>\n      <tr>\n        <td id=\"L9827\" class=\"blob-num js-line-number\" data-line-number=\"9827\"></td>\n        <td id=\"LC9827\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9828\" class=\"blob-num js-line-number\" data-line-number=\"9828\"></td>\n        <td id=\"LC9828\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">dtdPubID</span>(<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">pubID</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9829\" class=\"blob-num js-line-number\" data-line-number=\"9829\"></td>\n        <td id=\"LC9829\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9830\" class=\"blob-num js-line-number\" data-line-number=\"9830\"></td>\n        <td id=\"LC9830\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9831\" class=\"blob-num js-line-number\" data-line-number=\"9831\"></td>\n        <td id=\"LC9831\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">dtdSysID</span>(<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">sysID</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9832\" class=\"blob-num js-line-number\" data-line-number=\"9832\"></td>\n        <td id=\"LC9832\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9833\" class=\"blob-num js-line-number\" data-line-number=\"9833\"></td>\n        <td id=\"LC9833\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9834\" class=\"blob-num js-line-number\" data-line-number=\"9834\"></td>\n        <td id=\"LC9834\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9835\" class=\"blob-num js-line-number\" data-line-number=\"9835\"></td>\n        <td id=\"LC9835\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDTDNotation</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9836\" class=\"blob-num js-line-number\" data-line-number=\"9836\"></td>\n        <td id=\"LC9836\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLDTDNotation</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9837\" class=\"blob-num js-line-number\" data-line-number=\"9837\"></td>\n        <td id=\"LC9837\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9838\" class=\"blob-num js-line-number\" data-line-number=\"9838\"></td>\n        <td id=\"LC9838\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9839\" class=\"blob-num js-line-number\" data-line-number=\"9839\"></td>\n        <td id=\"LC9839\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDTDNotation</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9840\" class=\"blob-num js-line-number\" data-line-number=\"9840\"></td>\n        <td id=\"LC9840\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> indent, newline, offset, pretty, r, ref, ref1, ref2, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9841\" class=\"blob-num js-line-number\" data-line-number=\"9841\"></td>\n        <td id=\"LC9841\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9842\" class=\"blob-num js-line-number\" data-line-number=\"9842\"></td>\n        <td id=\"LC9842\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9843\" class=\"blob-num js-line-number\" data-line-number=\"9843\"></td>\n        <td id=\"LC9843\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9844\" class=\"blob-num js-line-number\" data-line-number=\"9844\"></td>\n        <td id=\"LC9844\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9845\" class=\"blob-num js-line-number\" data-line-number=\"9845\"></td>\n        <td id=\"LC9845\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9846\" class=\"blob-num js-line-number\" data-line-number=\"9846\"></td>\n        <td id=\"LC9846\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L9847\" class=\"blob-num js-line-number\" data-line-number=\"9847\"></td>\n        <td id=\"LC9847\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9848\" class=\"blob-num js-line-number\" data-line-number=\"9848\"></td>\n        <td id=\"LC9848\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9849\" class=\"blob-num js-line-number\" data-line-number=\"9849\"></td>\n        <td id=\"LC9849\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9850\" class=\"blob-num js-line-number\" data-line-number=\"9850\"></td>\n        <td id=\"LC9850\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9851\" class=\"blob-num js-line-number\" data-line-number=\"9851\"></td>\n        <td id=\"LC9851\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;!NOTATION <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9852\" class=\"blob-num js-line-number\" data-line-number=\"9852\"></td>\n        <td id=\"LC9852\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9853\" class=\"blob-num js-line-number\" data-line-number=\"9853\"></td>\n        <td id=\"LC9853\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> PUBLIC &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot; &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9854\" class=\"blob-num js-line-number\" data-line-number=\"9854\"></td>\n        <td id=\"LC9854\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pubID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9855\" class=\"blob-num js-line-number\" data-line-number=\"9855\"></td>\n        <td id=\"LC9855\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> PUBLIC &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9856\" class=\"blob-num js-line-number\" data-line-number=\"9856\"></td>\n        <td id=\"LC9856\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9857\" class=\"blob-num js-line-number\" data-line-number=\"9857\"></td>\n        <td id=\"LC9857\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> SYSTEM &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9858\" class=\"blob-num js-line-number\" data-line-number=\"9858\"></td>\n        <td id=\"LC9858\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9859\" class=\"blob-num js-line-number\" data-line-number=\"9859\"></td>\n        <td id=\"LC9859\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9860\" class=\"blob-num js-line-number\" data-line-number=\"9860\"></td>\n        <td id=\"LC9860\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9861\" class=\"blob-num js-line-number\" data-line-number=\"9861\"></td>\n        <td id=\"LC9861\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L9862\" class=\"blob-num js-line-number\" data-line-number=\"9862\"></td>\n        <td id=\"LC9862\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9863\" class=\"blob-num js-line-number\" data-line-number=\"9863\"></td>\n        <td id=\"LC9863\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L9864\" class=\"blob-num js-line-number\" data-line-number=\"9864\"></td>\n        <td id=\"LC9864\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9865\" class=\"blob-num js-line-number\" data-line-number=\"9865\"></td>\n        <td id=\"LC9865\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9866\" class=\"blob-num js-line-number\" data-line-number=\"9866\"></td>\n        <td id=\"LC9866\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLDTDNotation;</td>\n      </tr>\n      <tr>\n        <td id=\"L9867\" class=\"blob-num js-line-number\" data-line-number=\"9867\"></td>\n        <td id=\"LC9867\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9868\" class=\"blob-num js-line-number\" data-line-number=\"9868\"></td>\n        <td id=\"LC9868\" class=\"blob-code blob-code-inner js-file-line\">  })();</td>\n      </tr>\n      <tr>\n        <td id=\"L9869\" class=\"blob-num js-line-number\" data-line-number=\"9869\"></td>\n        <td id=\"LC9869\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9870\" class=\"blob-num js-line-number\" data-line-number=\"9870\"></td>\n        <td id=\"LC9870\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9871\" class=\"blob-num js-line-number\" data-line-number=\"9871\"></td>\n        <td id=\"LC9871\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9872\" class=\"blob-num js-line-number\" data-line-number=\"9872\"></td>\n        <td id=\"LC9872\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">74</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L9873\" class=\"blob-num js-line-number\" data-line-number=\"9873\"></td>\n        <td id=\"LC9873\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9874\" class=\"blob-num js-line-number\" data-line-number=\"9874\"></td>\n        <td id=\"LC9874\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLDeclaration, XMLNode, create, isObject,</td>\n      </tr>\n      <tr>\n        <td id=\"L9875\" class=\"blob-num js-line-number\" data-line-number=\"9875\"></td>\n        <td id=\"LC9875\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">child</span>, <span class=\"pl-smi\">parent</span>) { <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> key <span class=\"pl-k\">in</span> parent) { <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(parent, key)) child[key] <span class=\"pl-k\">=</span> parent[key]; } <span class=\"pl-k\">function</span> <span class=\"pl-en\">ctor</span>() { <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span> <span class=\"pl-k\">=</span> child; } <span class=\"pl-smi\">ctor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">ctor</span>(); <span class=\"pl-smi\">child</span>.<span class=\"pl-smi\">__super__</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-k\">return</span> child; },</td>\n      </tr>\n      <tr>\n        <td id=\"L9876\" class=\"blob-num js-line-number\" data-line-number=\"9876\"></td>\n        <td id=\"LC9876\" class=\"blob-code blob-code-inner js-file-line\">    hasProp <span class=\"pl-k\">=</span> {}.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9877\" class=\"blob-num js-line-number\" data-line-number=\"9877\"></td>\n        <td id=\"LC9877\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9878\" class=\"blob-num js-line-number\" data-line-number=\"9878\"></td>\n        <td id=\"LC9878\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9879\" class=\"blob-num js-line-number\" data-line-number=\"9879\"></td>\n        <td id=\"LC9879\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9880\" class=\"blob-num js-line-number\" data-line-number=\"9880\"></td>\n        <td id=\"LC9880\" class=\"blob-code blob-code-inner js-file-line\">  isObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/lang/isObject<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9881\" class=\"blob-num js-line-number\" data-line-number=\"9881\"></td>\n        <td id=\"LC9881\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9882\" class=\"blob-num js-line-number\" data-line-number=\"9882\"></td>\n        <td id=\"LC9882\" class=\"blob-code blob-code-inner js-file-line\">  XMLNode <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLNode<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9883\" class=\"blob-num js-line-number\" data-line-number=\"9883\"></td>\n        <td id=\"LC9883\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9884\" class=\"blob-num js-line-number\" data-line-number=\"9884\"></td>\n        <td id=\"LC9884\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLDeclaration <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">superClass</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9885\" class=\"blob-num js-line-number\" data-line-number=\"9885\"></td>\n        <td id=\"LC9885\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span>(XMLDeclaration, superClass);</td>\n      </tr>\n      <tr>\n        <td id=\"L9886\" class=\"blob-num js-line-number\" data-line-number=\"9886\"></td>\n        <td id=\"LC9886\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9887\" class=\"blob-num js-line-number\" data-line-number=\"9887\"></td>\n        <td id=\"LC9887\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLDeclaration</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">version</span>, <span class=\"pl-smi\">encoding</span>, <span class=\"pl-smi\">standalone</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9888\" class=\"blob-num js-line-number\" data-line-number=\"9888\"></td>\n        <td id=\"LC9888\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> ref;</td>\n      </tr>\n      <tr>\n        <td id=\"L9889\" class=\"blob-num js-line-number\" data-line-number=\"9889\"></td>\n        <td id=\"LC9889\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">XMLDeclaration</span>.<span class=\"pl-smi\">__super__</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, parent);</td>\n      </tr>\n      <tr>\n        <td id=\"L9890\" class=\"blob-num js-line-number\" data-line-number=\"9890\"></td>\n        <td id=\"LC9890\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isObject</span>(version)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9891\" class=\"blob-num js-line-number\" data-line-number=\"9891\"></td>\n        <td id=\"LC9891\" class=\"blob-code blob-code-inner js-file-line\">        ref <span class=\"pl-k\">=</span> version, version <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ref</span>.<span class=\"pl-c1\">version</span>, encoding <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ref</span>.<span class=\"pl-c1\">encoding</span>, standalone <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ref</span>.<span class=\"pl-smi\">standalone</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9892\" class=\"blob-num js-line-number\" data-line-number=\"9892\"></td>\n        <td id=\"LC9892\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9893\" class=\"blob-num js-line-number\" data-line-number=\"9893\"></td>\n        <td id=\"LC9893\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>version) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9894\" class=\"blob-num js-line-number\" data-line-number=\"9894\"></td>\n        <td id=\"LC9894\" class=\"blob-code blob-code-inner js-file-line\">        version <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>1.0<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9895\" class=\"blob-num js-line-number\" data-line-number=\"9895\"></td>\n        <td id=\"LC9895\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9896\" class=\"blob-num js-line-number\" data-line-number=\"9896\"></td>\n        <td id=\"LC9896\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (version <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9897\" class=\"blob-num js-line-number\" data-line-number=\"9897\"></td>\n        <td id=\"LC9897\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">version</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">xmlVersion</span>(version);</td>\n      </tr>\n      <tr>\n        <td id=\"L9898\" class=\"blob-num js-line-number\" data-line-number=\"9898\"></td>\n        <td id=\"LC9898\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9899\" class=\"blob-num js-line-number\" data-line-number=\"9899\"></td>\n        <td id=\"LC9899\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (encoding <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9900\" class=\"blob-num js-line-number\" data-line-number=\"9900\"></td>\n        <td id=\"LC9900\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">encoding</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">xmlEncoding</span>(encoding);</td>\n      </tr>\n      <tr>\n        <td id=\"L9901\" class=\"blob-num js-line-number\" data-line-number=\"9901\"></td>\n        <td id=\"LC9901\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9902\" class=\"blob-num js-line-number\" data-line-number=\"9902\"></td>\n        <td id=\"LC9902\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (standalone <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9903\" class=\"blob-num js-line-number\" data-line-number=\"9903\"></td>\n        <td id=\"LC9903\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">standalone</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">xmlStandalone</span>(standalone);</td>\n      </tr>\n      <tr>\n        <td id=\"L9904\" class=\"blob-num js-line-number\" data-line-number=\"9904\"></td>\n        <td id=\"LC9904\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9905\" class=\"blob-num js-line-number\" data-line-number=\"9905\"></td>\n        <td id=\"LC9905\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9906\" class=\"blob-num js-line-number\" data-line-number=\"9906\"></td>\n        <td id=\"LC9906\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9907\" class=\"blob-num js-line-number\" data-line-number=\"9907\"></td>\n        <td id=\"LC9907\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDeclaration</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9908\" class=\"blob-num js-line-number\" data-line-number=\"9908\"></td>\n        <td id=\"LC9908\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLDeclaration</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9909\" class=\"blob-num js-line-number\" data-line-number=\"9909\"></td>\n        <td id=\"LC9909\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9910\" class=\"blob-num js-line-number\" data-line-number=\"9910\"></td>\n        <td id=\"LC9910\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9911\" class=\"blob-num js-line-number\" data-line-number=\"9911\"></td>\n        <td id=\"LC9911\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDeclaration</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9912\" class=\"blob-num js-line-number\" data-line-number=\"9912\"></td>\n        <td id=\"LC9912\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> indent, newline, offset, pretty, r, ref, ref1, ref2, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9913\" class=\"blob-num js-line-number\" data-line-number=\"9913\"></td>\n        <td id=\"LC9913\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9914\" class=\"blob-num js-line-number\" data-line-number=\"9914\"></td>\n        <td id=\"LC9914\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9915\" class=\"blob-num js-line-number\" data-line-number=\"9915\"></td>\n        <td id=\"LC9915\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9916\" class=\"blob-num js-line-number\" data-line-number=\"9916\"></td>\n        <td id=\"LC9916\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9917\" class=\"blob-num js-line-number\" data-line-number=\"9917\"></td>\n        <td id=\"LC9917\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9918\" class=\"blob-num js-line-number\" data-line-number=\"9918\"></td>\n        <td id=\"LC9918\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L9919\" class=\"blob-num js-line-number\" data-line-number=\"9919\"></td>\n        <td id=\"LC9919\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9920\" class=\"blob-num js-line-number\" data-line-number=\"9920\"></td>\n        <td id=\"LC9920\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9921\" class=\"blob-num js-line-number\" data-line-number=\"9921\"></td>\n        <td id=\"LC9921\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L9922\" class=\"blob-num js-line-number\" data-line-number=\"9922\"></td>\n        <td id=\"LC9922\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9923\" class=\"blob-num js-line-number\" data-line-number=\"9923\"></td>\n        <td id=\"LC9923\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;?xml<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9924\" class=\"blob-num js-line-number\" data-line-number=\"9924\"></td>\n        <td id=\"LC9924\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">version</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9925\" class=\"blob-num js-line-number\" data-line-number=\"9925\"></td>\n        <td id=\"LC9925\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> version=&quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">version</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9926\" class=\"blob-num js-line-number\" data-line-number=\"9926\"></td>\n        <td id=\"LC9926\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9927\" class=\"blob-num js-line-number\" data-line-number=\"9927\"></td>\n        <td id=\"LC9927\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">encoding</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9928\" class=\"blob-num js-line-number\" data-line-number=\"9928\"></td>\n        <td id=\"LC9928\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> encoding=&quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">encoding</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9929\" class=\"blob-num js-line-number\" data-line-number=\"9929\"></td>\n        <td id=\"LC9929\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9930\" class=\"blob-num js-line-number\" data-line-number=\"9930\"></td>\n        <td id=\"LC9930\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">standalone</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9931\" class=\"blob-num js-line-number\" data-line-number=\"9931\"></td>\n        <td id=\"LC9931\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> standalone=&quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">standalone</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9932\" class=\"blob-num js-line-number\" data-line-number=\"9932\"></td>\n        <td id=\"LC9932\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9933\" class=\"blob-num js-line-number\" data-line-number=\"9933\"></td>\n        <td id=\"LC9933\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9934\" class=\"blob-num js-line-number\" data-line-number=\"9934\"></td>\n        <td id=\"LC9934\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9935\" class=\"blob-num js-line-number\" data-line-number=\"9935\"></td>\n        <td id=\"LC9935\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L9936\" class=\"blob-num js-line-number\" data-line-number=\"9936\"></td>\n        <td id=\"LC9936\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9937\" class=\"blob-num js-line-number\" data-line-number=\"9937\"></td>\n        <td id=\"LC9937\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L9938\" class=\"blob-num js-line-number\" data-line-number=\"9938\"></td>\n        <td id=\"LC9938\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9939\" class=\"blob-num js-line-number\" data-line-number=\"9939\"></td>\n        <td id=\"LC9939\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9940\" class=\"blob-num js-line-number\" data-line-number=\"9940\"></td>\n        <td id=\"LC9940\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLDeclaration;</td>\n      </tr>\n      <tr>\n        <td id=\"L9941\" class=\"blob-num js-line-number\" data-line-number=\"9941\"></td>\n        <td id=\"LC9941\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9942\" class=\"blob-num js-line-number\" data-line-number=\"9942\"></td>\n        <td id=\"LC9942\" class=\"blob-code blob-code-inner js-file-line\">  })(XMLNode);</td>\n      </tr>\n      <tr>\n        <td id=\"L9943\" class=\"blob-num js-line-number\" data-line-number=\"9943\"></td>\n        <td id=\"LC9943\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9944\" class=\"blob-num js-line-number\" data-line-number=\"9944\"></td>\n        <td id=\"LC9944\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9945\" class=\"blob-num js-line-number\" data-line-number=\"9945\"></td>\n        <td id=\"LC9945\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9946\" class=\"blob-num js-line-number\" data-line-number=\"9946\"></td>\n        <td id=\"LC9946\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLNode<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">77</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/lang/isObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">121</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">75</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L9947\" class=\"blob-num js-line-number\" data-line-number=\"9947\"></td>\n        <td id=\"LC9947\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9948\" class=\"blob-num js-line-number\" data-line-number=\"9948\"></td>\n        <td id=\"LC9948\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLCData, XMLComment, XMLDTDAttList, XMLDTDElement, XMLDTDEntity, XMLDTDNotation, XMLDocType, XMLProcessingInstruction, create, isObject;</td>\n      </tr>\n      <tr>\n        <td id=\"L9949\" class=\"blob-num js-line-number\" data-line-number=\"9949\"></td>\n        <td id=\"LC9949\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9950\" class=\"blob-num js-line-number\" data-line-number=\"9950\"></td>\n        <td id=\"LC9950\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9951\" class=\"blob-num js-line-number\" data-line-number=\"9951\"></td>\n        <td id=\"LC9951\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9952\" class=\"blob-num js-line-number\" data-line-number=\"9952\"></td>\n        <td id=\"LC9952\" class=\"blob-code blob-code-inner js-file-line\">  isObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/lang/isObject<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9953\" class=\"blob-num js-line-number\" data-line-number=\"9953\"></td>\n        <td id=\"LC9953\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9954\" class=\"blob-num js-line-number\" data-line-number=\"9954\"></td>\n        <td id=\"LC9954\" class=\"blob-code blob-code-inner js-file-line\">  XMLCData <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLCData<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9955\" class=\"blob-num js-line-number\" data-line-number=\"9955\"></td>\n        <td id=\"LC9955\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9956\" class=\"blob-num js-line-number\" data-line-number=\"9956\"></td>\n        <td id=\"LC9956\" class=\"blob-code blob-code-inner js-file-line\">  XMLComment <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLComment<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9957\" class=\"blob-num js-line-number\" data-line-number=\"9957\"></td>\n        <td id=\"LC9957\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9958\" class=\"blob-num js-line-number\" data-line-number=\"9958\"></td>\n        <td id=\"LC9958\" class=\"blob-code blob-code-inner js-file-line\">  XMLDTDAttList <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLDTDAttList<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9959\" class=\"blob-num js-line-number\" data-line-number=\"9959\"></td>\n        <td id=\"LC9959\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9960\" class=\"blob-num js-line-number\" data-line-number=\"9960\"></td>\n        <td id=\"LC9960\" class=\"blob-code blob-code-inner js-file-line\">  XMLDTDEntity <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLDTDEntity<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9961\" class=\"blob-num js-line-number\" data-line-number=\"9961\"></td>\n        <td id=\"LC9961\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9962\" class=\"blob-num js-line-number\" data-line-number=\"9962\"></td>\n        <td id=\"LC9962\" class=\"blob-code blob-code-inner js-file-line\">  XMLDTDElement <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLDTDElement<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9963\" class=\"blob-num js-line-number\" data-line-number=\"9963\"></td>\n        <td id=\"LC9963\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9964\" class=\"blob-num js-line-number\" data-line-number=\"9964\"></td>\n        <td id=\"LC9964\" class=\"blob-code blob-code-inner js-file-line\">  XMLDTDNotation <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLDTDNotation<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9965\" class=\"blob-num js-line-number\" data-line-number=\"9965\"></td>\n        <td id=\"LC9965\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9966\" class=\"blob-num js-line-number\" data-line-number=\"9966\"></td>\n        <td id=\"LC9966\" class=\"blob-code blob-code-inner js-file-line\">  XMLProcessingInstruction <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLProcessingInstruction<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9967\" class=\"blob-num js-line-number\" data-line-number=\"9967\"></td>\n        <td id=\"LC9967\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9968\" class=\"blob-num js-line-number\" data-line-number=\"9968\"></td>\n        <td id=\"LC9968\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLDocType <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9969\" class=\"blob-num js-line-number\" data-line-number=\"9969\"></td>\n        <td id=\"LC9969\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLDocType</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">pubID</span>, <span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9970\" class=\"blob-num js-line-number\" data-line-number=\"9970\"></td>\n        <td id=\"LC9970\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> ref, ref1;</td>\n      </tr>\n      <tr>\n        <td id=\"L9971\" class=\"blob-num js-line-number\" data-line-number=\"9971\"></td>\n        <td id=\"LC9971\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">documentObject</span> <span class=\"pl-k\">=</span> parent;</td>\n      </tr>\n      <tr>\n        <td id=\"L9972\" class=\"blob-num js-line-number\" data-line-number=\"9972\"></td>\n        <td id=\"LC9972\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">documentObject</span>.<span class=\"pl-smi\">stringify</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9973\" class=\"blob-num js-line-number\" data-line-number=\"9973\"></td>\n        <td id=\"LC9973\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span> <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L9974\" class=\"blob-num js-line-number\" data-line-number=\"9974\"></td>\n        <td id=\"LC9974\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isObject</span>(pubID)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9975\" class=\"blob-num js-line-number\" data-line-number=\"9975\"></td>\n        <td id=\"LC9975\" class=\"blob-code blob-code-inner js-file-line\">        ref <span class=\"pl-k\">=</span> pubID, pubID <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ref</span>.<span class=\"pl-smi\">pubID</span>, sysID <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ref</span>.<span class=\"pl-smi\">sysID</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9976\" class=\"blob-num js-line-number\" data-line-number=\"9976\"></td>\n        <td id=\"LC9976\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9977\" class=\"blob-num js-line-number\" data-line-number=\"9977\"></td>\n        <td id=\"LC9977\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (sysID <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9978\" class=\"blob-num js-line-number\" data-line-number=\"9978\"></td>\n        <td id=\"LC9978\" class=\"blob-code blob-code-inner js-file-line\">        ref1 <span class=\"pl-k\">=</span> [pubID, sysID], sysID <span class=\"pl-k\">=</span> ref1[<span class=\"pl-c1\">0</span>], pubID <span class=\"pl-k\">=</span> ref1[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L9979\" class=\"blob-num js-line-number\" data-line-number=\"9979\"></td>\n        <td id=\"LC9979\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9980\" class=\"blob-num js-line-number\" data-line-number=\"9980\"></td>\n        <td id=\"LC9980\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pubID <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9981\" class=\"blob-num js-line-number\" data-line-number=\"9981\"></td>\n        <td id=\"LC9981\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">dtdPubID</span>(pubID);</td>\n      </tr>\n      <tr>\n        <td id=\"L9982\" class=\"blob-num js-line-number\" data-line-number=\"9982\"></td>\n        <td id=\"LC9982\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9983\" class=\"blob-num js-line-number\" data-line-number=\"9983\"></td>\n        <td id=\"LC9983\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (sysID <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9984\" class=\"blob-num js-line-number\" data-line-number=\"9984\"></td>\n        <td id=\"LC9984\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">dtdSysID</span>(sysID);</td>\n      </tr>\n      <tr>\n        <td id=\"L9985\" class=\"blob-num js-line-number\" data-line-number=\"9985\"></td>\n        <td id=\"LC9985\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L9986\" class=\"blob-num js-line-number\" data-line-number=\"9986\"></td>\n        <td id=\"LC9986\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L9987\" class=\"blob-num js-line-number\" data-line-number=\"9987\"></td>\n        <td id=\"LC9987\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9988\" class=\"blob-num js-line-number\" data-line-number=\"9988\"></td>\n        <td id=\"LC9988\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L9989\" class=\"blob-num js-line-number\" data-line-number=\"9989\"></td>\n        <td id=\"LC9989\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L9990\" class=\"blob-num js-line-number\" data-line-number=\"9990\"></td>\n        <td id=\"LC9990\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9991\" class=\"blob-num js-line-number\" data-line-number=\"9991\"></td>\n        <td id=\"LC9991\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9992\" class=\"blob-num js-line-number\" data-line-number=\"9992\"></td>\n        <td id=\"LC9992\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">element</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L9993\" class=\"blob-num js-line-number\" data-line-number=\"9993\"></td>\n        <td id=\"LC9993\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L9994\" class=\"blob-num js-line-number\" data-line-number=\"9994\"></td>\n        <td id=\"LC9994\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLDTDElement</span>(<span class=\"pl-v\">this</span>, name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L9995\" class=\"blob-num js-line-number\" data-line-number=\"9995\"></td>\n        <td id=\"LC9995\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L9996\" class=\"blob-num js-line-number\" data-line-number=\"9996\"></td>\n        <td id=\"LC9996\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L9997\" class=\"blob-num js-line-number\" data-line-number=\"9997\"></td>\n        <td id=\"LC9997\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L9998\" class=\"blob-num js-line-number\" data-line-number=\"9998\"></td>\n        <td id=\"LC9998\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L9999\" class=\"blob-num js-line-number\" data-line-number=\"9999\"></td>\n        <td id=\"LC9999\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">attList</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">elementName</span>, <span class=\"pl-smi\">attributeName</span>, <span class=\"pl-smi\">attributeType</span>, <span class=\"pl-smi\">defaultValueType</span>, <span class=\"pl-smi\">defaultValue</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10000\" class=\"blob-num js-line-number\" data-line-number=\"10000\"></td>\n        <td id=\"LC10000\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10001\" class=\"blob-num js-line-number\" data-line-number=\"10001\"></td>\n        <td id=\"LC10001\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLDTDAttList</span>(<span class=\"pl-v\">this</span>, elementName, attributeName, attributeType, defaultValueType, defaultValue);</td>\n      </tr>\n      <tr>\n        <td id=\"L10002\" class=\"blob-num js-line-number\" data-line-number=\"10002\"></td>\n        <td id=\"LC10002\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10003\" class=\"blob-num js-line-number\" data-line-number=\"10003\"></td>\n        <td id=\"LC10003\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10004\" class=\"blob-num js-line-number\" data-line-number=\"10004\"></td>\n        <td id=\"LC10004\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10005\" class=\"blob-num js-line-number\" data-line-number=\"10005\"></td>\n        <td id=\"LC10005\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10006\" class=\"blob-num js-line-number\" data-line-number=\"10006\"></td>\n        <td id=\"LC10006\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">entity</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10007\" class=\"blob-num js-line-number\" data-line-number=\"10007\"></td>\n        <td id=\"LC10007\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10008\" class=\"blob-num js-line-number\" data-line-number=\"10008\"></td>\n        <td id=\"LC10008\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLDTDEntity</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-c1\">false</span>, name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10009\" class=\"blob-num js-line-number\" data-line-number=\"10009\"></td>\n        <td id=\"LC10009\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10010\" class=\"blob-num js-line-number\" data-line-number=\"10010\"></td>\n        <td id=\"LC10010\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10011\" class=\"blob-num js-line-number\" data-line-number=\"10011\"></td>\n        <td id=\"LC10011\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10012\" class=\"blob-num js-line-number\" data-line-number=\"10012\"></td>\n        <td id=\"LC10012\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10013\" class=\"blob-num js-line-number\" data-line-number=\"10013\"></td>\n        <td id=\"LC10013\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">pEntity</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10014\" class=\"blob-num js-line-number\" data-line-number=\"10014\"></td>\n        <td id=\"LC10014\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10015\" class=\"blob-num js-line-number\" data-line-number=\"10015\"></td>\n        <td id=\"LC10015\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLDTDEntity</span>(<span class=\"pl-v\">this</span>, <span class=\"pl-c1\">true</span>, name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10016\" class=\"blob-num js-line-number\" data-line-number=\"10016\"></td>\n        <td id=\"LC10016\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10017\" class=\"blob-num js-line-number\" data-line-number=\"10017\"></td>\n        <td id=\"LC10017\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10018\" class=\"blob-num js-line-number\" data-line-number=\"10018\"></td>\n        <td id=\"LC10018\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10019\" class=\"blob-num js-line-number\" data-line-number=\"10019\"></td>\n        <td id=\"LC10019\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10020\" class=\"blob-num js-line-number\" data-line-number=\"10020\"></td>\n        <td id=\"LC10020\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">notation</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10021\" class=\"blob-num js-line-number\" data-line-number=\"10021\"></td>\n        <td id=\"LC10021\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10022\" class=\"blob-num js-line-number\" data-line-number=\"10022\"></td>\n        <td id=\"LC10022\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLDTDNotation</span>(<span class=\"pl-v\">this</span>, name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10023\" class=\"blob-num js-line-number\" data-line-number=\"10023\"></td>\n        <td id=\"LC10023\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10024\" class=\"blob-num js-line-number\" data-line-number=\"10024\"></td>\n        <td id=\"LC10024\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10025\" class=\"blob-num js-line-number\" data-line-number=\"10025\"></td>\n        <td id=\"LC10025\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10026\" class=\"blob-num js-line-number\" data-line-number=\"10026\"></td>\n        <td id=\"LC10026\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10027\" class=\"blob-num js-line-number\" data-line-number=\"10027\"></td>\n        <td id=\"LC10027\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">cdata</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10028\" class=\"blob-num js-line-number\" data-line-number=\"10028\"></td>\n        <td id=\"LC10028\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10029\" class=\"blob-num js-line-number\" data-line-number=\"10029\"></td>\n        <td id=\"LC10029\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLCData</span>(<span class=\"pl-v\">this</span>, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10030\" class=\"blob-num js-line-number\" data-line-number=\"10030\"></td>\n        <td id=\"LC10030\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10031\" class=\"blob-num js-line-number\" data-line-number=\"10031\"></td>\n        <td id=\"LC10031\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10032\" class=\"blob-num js-line-number\" data-line-number=\"10032\"></td>\n        <td id=\"LC10032\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10033\" class=\"blob-num js-line-number\" data-line-number=\"10033\"></td>\n        <td id=\"LC10033\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10034\" class=\"blob-num js-line-number\" data-line-number=\"10034\"></td>\n        <td id=\"LC10034\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">comment</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10035\" class=\"blob-num js-line-number\" data-line-number=\"10035\"></td>\n        <td id=\"LC10035\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10036\" class=\"blob-num js-line-number\" data-line-number=\"10036\"></td>\n        <td id=\"LC10036\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLComment</span>(<span class=\"pl-v\">this</span>, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10037\" class=\"blob-num js-line-number\" data-line-number=\"10037\"></td>\n        <td id=\"LC10037\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10038\" class=\"blob-num js-line-number\" data-line-number=\"10038\"></td>\n        <td id=\"LC10038\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10039\" class=\"blob-num js-line-number\" data-line-number=\"10039\"></td>\n        <td id=\"LC10039\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10040\" class=\"blob-num js-line-number\" data-line-number=\"10040\"></td>\n        <td id=\"LC10040\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10041\" class=\"blob-num js-line-number\" data-line-number=\"10041\"></td>\n        <td id=\"LC10041\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">instruction</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">target</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10042\" class=\"blob-num js-line-number\" data-line-number=\"10042\"></td>\n        <td id=\"LC10042\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10043\" class=\"blob-num js-line-number\" data-line-number=\"10043\"></td>\n        <td id=\"LC10043\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLProcessingInstruction</span>(<span class=\"pl-v\">this</span>, target, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10044\" class=\"blob-num js-line-number\" data-line-number=\"10044\"></td>\n        <td id=\"LC10044\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10045\" class=\"blob-num js-line-number\" data-line-number=\"10045\"></td>\n        <td id=\"LC10045\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10046\" class=\"blob-num js-line-number\" data-line-number=\"10046\"></td>\n        <td id=\"LC10046\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10047\" class=\"blob-num js-line-number\" data-line-number=\"10047\"></td>\n        <td id=\"LC10047\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10048\" class=\"blob-num js-line-number\" data-line-number=\"10048\"></td>\n        <td id=\"LC10048\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">root</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10049\" class=\"blob-num js-line-number\" data-line-number=\"10049\"></td>\n        <td id=\"LC10049\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">documentObject</span>.<span class=\"pl-en\">root</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10050\" class=\"blob-num js-line-number\" data-line-number=\"10050\"></td>\n        <td id=\"LC10050\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10051\" class=\"blob-num js-line-number\" data-line-number=\"10051\"></td>\n        <td id=\"LC10051\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10052\" class=\"blob-num js-line-number\" data-line-number=\"10052\"></td>\n        <td id=\"LC10052\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">document</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10053\" class=\"blob-num js-line-number\" data-line-number=\"10053\"></td>\n        <td id=\"LC10053\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">documentObject</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10054\" class=\"blob-num js-line-number\" data-line-number=\"10054\"></td>\n        <td id=\"LC10054\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10055\" class=\"blob-num js-line-number\" data-line-number=\"10055\"></td>\n        <td id=\"LC10055\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10056\" class=\"blob-num js-line-number\" data-line-number=\"10056\"></td>\n        <td id=\"LC10056\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10057\" class=\"blob-num js-line-number\" data-line-number=\"10057\"></td>\n        <td id=\"LC10057\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child, i, indent, len, newline, offset, pretty, r, ref, ref1, ref2, ref3, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L10058\" class=\"blob-num js-line-number\" data-line-number=\"10058\"></td>\n        <td id=\"LC10058\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10059\" class=\"blob-num js-line-number\" data-line-number=\"10059\"></td>\n        <td id=\"LC10059\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10060\" class=\"blob-num js-line-number\" data-line-number=\"10060\"></td>\n        <td id=\"LC10060\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10061\" class=\"blob-num js-line-number\" data-line-number=\"10061\"></td>\n        <td id=\"LC10061\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10062\" class=\"blob-num js-line-number\" data-line-number=\"10062\"></td>\n        <td id=\"LC10062\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10063\" class=\"blob-num js-line-number\" data-line-number=\"10063\"></td>\n        <td id=\"LC10063\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L10064\" class=\"blob-num js-line-number\" data-line-number=\"10064\"></td>\n        <td id=\"LC10064\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10065\" class=\"blob-num js-line-number\" data-line-number=\"10065\"></td>\n        <td id=\"LC10065\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10066\" class=\"blob-num js-line-number\" data-line-number=\"10066\"></td>\n        <td id=\"LC10066\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L10067\" class=\"blob-num js-line-number\" data-line-number=\"10067\"></td>\n        <td id=\"LC10067\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10068\" class=\"blob-num js-line-number\" data-line-number=\"10068\"></td>\n        <td id=\"LC10068\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;!DOCTYPE <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">root</span>().<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10069\" class=\"blob-num js-line-number\" data-line-number=\"10069\"></td>\n        <td id=\"LC10069\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10070\" class=\"blob-num js-line-number\" data-line-number=\"10070\"></td>\n        <td id=\"LC10070\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> PUBLIC &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">pubID</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot; &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10071\" class=\"blob-num js-line-number\" data-line-number=\"10071\"></td>\n        <td id=\"LC10071\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10072\" class=\"blob-num js-line-number\" data-line-number=\"10072\"></td>\n        <td id=\"LC10072\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> SYSTEM &quot;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">sysID</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&quot;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10073\" class=\"blob-num js-line-number\" data-line-number=\"10073\"></td>\n        <td id=\"LC10073\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10074\" class=\"blob-num js-line-number\" data-line-number=\"10074\"></td>\n        <td id=\"LC10074\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10075\" class=\"blob-num js-line-number\" data-line-number=\"10075\"></td>\n        <td id=\"LC10075\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> [<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10076\" class=\"blob-num js-line-number\" data-line-number=\"10076\"></td>\n        <td id=\"LC10076\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10077\" class=\"blob-num js-line-number\" data-line-number=\"10077\"></td>\n        <td id=\"LC10077\" class=\"blob-code blob-code-inner js-file-line\">          r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L10078\" class=\"blob-num js-line-number\" data-line-number=\"10078\"></td>\n        <td id=\"LC10078\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10079\" class=\"blob-num js-line-number\" data-line-number=\"10079\"></td>\n        <td id=\"LC10079\" class=\"blob-code blob-code-inner js-file-line\">        ref3 <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10080\" class=\"blob-num js-line-number\" data-line-number=\"10080\"></td>\n        <td id=\"LC10080\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ref3</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">&lt;</span> len; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10081\" class=\"blob-num js-line-number\" data-line-number=\"10081\"></td>\n        <td id=\"LC10081\" class=\"blob-code blob-code-inner js-file-line\">          child <span class=\"pl-k\">=</span> ref3[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L10082\" class=\"blob-num js-line-number\" data-line-number=\"10082\"></td>\n        <td id=\"LC10082\" class=\"blob-code blob-code-inner js-file-line\">          r <span class=\"pl-k\">+=</span> <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">toString</span>(options, level <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10083\" class=\"blob-num js-line-number\" data-line-number=\"10083\"></td>\n        <td id=\"LC10083\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10084\" class=\"blob-num js-line-number\" data-line-number=\"10084\"></td>\n        <td id=\"LC10084\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10085\" class=\"blob-num js-line-number\" data-line-number=\"10085\"></td>\n        <td id=\"LC10085\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10086\" class=\"blob-num js-line-number\" data-line-number=\"10086\"></td>\n        <td id=\"LC10086\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10087\" class=\"blob-num js-line-number\" data-line-number=\"10087\"></td>\n        <td id=\"LC10087\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10088\" class=\"blob-num js-line-number\" data-line-number=\"10088\"></td>\n        <td id=\"LC10088\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L10089\" class=\"blob-num js-line-number\" data-line-number=\"10089\"></td>\n        <td id=\"LC10089\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10090\" class=\"blob-num js-line-number\" data-line-number=\"10090\"></td>\n        <td id=\"LC10090\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L10091\" class=\"blob-num js-line-number\" data-line-number=\"10091\"></td>\n        <td id=\"LC10091\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10092\" class=\"blob-num js-line-number\" data-line-number=\"10092\"></td>\n        <td id=\"LC10092\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10093\" class=\"blob-num js-line-number\" data-line-number=\"10093\"></td>\n        <td id=\"LC10093\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">ele</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10094\" class=\"blob-num js-line-number\" data-line-number=\"10094\"></td>\n        <td id=\"LC10094\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">element</span>(name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10095\" class=\"blob-num js-line-number\" data-line-number=\"10095\"></td>\n        <td id=\"LC10095\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10096\" class=\"blob-num js-line-number\" data-line-number=\"10096\"></td>\n        <td id=\"LC10096\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10097\" class=\"blob-num js-line-number\" data-line-number=\"10097\"></td>\n        <td id=\"LC10097\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">att</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">elementName</span>, <span class=\"pl-smi\">attributeName</span>, <span class=\"pl-smi\">attributeType</span>, <span class=\"pl-smi\">defaultValueType</span>, <span class=\"pl-smi\">defaultValue</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10098\" class=\"blob-num js-line-number\" data-line-number=\"10098\"></td>\n        <td id=\"LC10098\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">attList</span>(elementName, attributeName, attributeType, defaultValueType, defaultValue);</td>\n      </tr>\n      <tr>\n        <td id=\"L10099\" class=\"blob-num js-line-number\" data-line-number=\"10099\"></td>\n        <td id=\"LC10099\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10100\" class=\"blob-num js-line-number\" data-line-number=\"10100\"></td>\n        <td id=\"LC10100\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10101\" class=\"blob-num js-line-number\" data-line-number=\"10101\"></td>\n        <td id=\"LC10101\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">ent</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10102\" class=\"blob-num js-line-number\" data-line-number=\"10102\"></td>\n        <td id=\"LC10102\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">entity</span>(name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10103\" class=\"blob-num js-line-number\" data-line-number=\"10103\"></td>\n        <td id=\"LC10103\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10104\" class=\"blob-num js-line-number\" data-line-number=\"10104\"></td>\n        <td id=\"LC10104\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10105\" class=\"blob-num js-line-number\" data-line-number=\"10105\"></td>\n        <td id=\"LC10105\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">pent</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10106\" class=\"blob-num js-line-number\" data-line-number=\"10106\"></td>\n        <td id=\"LC10106\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">pEntity</span>(name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10107\" class=\"blob-num js-line-number\" data-line-number=\"10107\"></td>\n        <td id=\"LC10107\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10108\" class=\"blob-num js-line-number\" data-line-number=\"10108\"></td>\n        <td id=\"LC10108\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10109\" class=\"blob-num js-line-number\" data-line-number=\"10109\"></td>\n        <td id=\"LC10109\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">not</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10110\" class=\"blob-num js-line-number\" data-line-number=\"10110\"></td>\n        <td id=\"LC10110\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">notation</span>(name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10111\" class=\"blob-num js-line-number\" data-line-number=\"10111\"></td>\n        <td id=\"LC10111\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10112\" class=\"blob-num js-line-number\" data-line-number=\"10112\"></td>\n        <td id=\"LC10112\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10113\" class=\"blob-num js-line-number\" data-line-number=\"10113\"></td>\n        <td id=\"LC10113\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">dat</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10114\" class=\"blob-num js-line-number\" data-line-number=\"10114\"></td>\n        <td id=\"LC10114\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">cdata</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10115\" class=\"blob-num js-line-number\" data-line-number=\"10115\"></td>\n        <td id=\"LC10115\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10116\" class=\"blob-num js-line-number\" data-line-number=\"10116\"></td>\n        <td id=\"LC10116\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10117\" class=\"blob-num js-line-number\" data-line-number=\"10117\"></td>\n        <td id=\"LC10117\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">com</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10118\" class=\"blob-num js-line-number\" data-line-number=\"10118\"></td>\n        <td id=\"LC10118\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">comment</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10119\" class=\"blob-num js-line-number\" data-line-number=\"10119\"></td>\n        <td id=\"LC10119\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10120\" class=\"blob-num js-line-number\" data-line-number=\"10120\"></td>\n        <td id=\"LC10120\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10121\" class=\"blob-num js-line-number\" data-line-number=\"10121\"></td>\n        <td id=\"LC10121\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">ins</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">target</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10122\" class=\"blob-num js-line-number\" data-line-number=\"10122\"></td>\n        <td id=\"LC10122\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">instruction</span>(target, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10123\" class=\"blob-num js-line-number\" data-line-number=\"10123\"></td>\n        <td id=\"LC10123\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10124\" class=\"blob-num js-line-number\" data-line-number=\"10124\"></td>\n        <td id=\"LC10124\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10125\" class=\"blob-num js-line-number\" data-line-number=\"10125\"></td>\n        <td id=\"LC10125\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">up</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10126\" class=\"blob-num js-line-number\" data-line-number=\"10126\"></td>\n        <td id=\"LC10126\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">root</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10127\" class=\"blob-num js-line-number\" data-line-number=\"10127\"></td>\n        <td id=\"LC10127\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10128\" class=\"blob-num js-line-number\" data-line-number=\"10128\"></td>\n        <td id=\"LC10128\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10129\" class=\"blob-num js-line-number\" data-line-number=\"10129\"></td>\n        <td id=\"LC10129\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLDocType</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">doc</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10130\" class=\"blob-num js-line-number\" data-line-number=\"10130\"></td>\n        <td id=\"LC10130\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">document</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10131\" class=\"blob-num js-line-number\" data-line-number=\"10131\"></td>\n        <td id=\"LC10131\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10132\" class=\"blob-num js-line-number\" data-line-number=\"10132\"></td>\n        <td id=\"LC10132\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10133\" class=\"blob-num js-line-number\" data-line-number=\"10133\"></td>\n        <td id=\"LC10133\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLDocType;</td>\n      </tr>\n      <tr>\n        <td id=\"L10134\" class=\"blob-num js-line-number\" data-line-number=\"10134\"></td>\n        <td id=\"LC10134\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10135\" class=\"blob-num js-line-number\" data-line-number=\"10135\"></td>\n        <td id=\"LC10135\" class=\"blob-code blob-code-inner js-file-line\">  })();</td>\n      </tr>\n      <tr>\n        <td id=\"L10136\" class=\"blob-num js-line-number\" data-line-number=\"10136\"></td>\n        <td id=\"LC10136\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10137\" class=\"blob-num js-line-number\" data-line-number=\"10137\"></td>\n        <td id=\"LC10137\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10138\" class=\"blob-num js-line-number\" data-line-number=\"10138\"></td>\n        <td id=\"LC10138\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10139\" class=\"blob-num js-line-number\" data-line-number=\"10139\"></td>\n        <td id=\"LC10139\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLCData<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">68</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLComment<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">69</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLDTDAttList<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">70</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLDTDElement<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">71</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLDTDEntity<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">72</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLDTDNotation<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">73</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLProcessingInstruction<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">78</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/lang/isObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">121</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">76</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L10140\" class=\"blob-num js-line-number\" data-line-number=\"10140\"></td>\n        <td id=\"LC10140\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10141\" class=\"blob-num js-line-number\" data-line-number=\"10141\"></td>\n        <td id=\"LC10141\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLAttribute, XMLElement, XMLNode, XMLProcessingInstruction, create, every, isArray, isFunction, isObject,</td>\n      </tr>\n      <tr>\n        <td id=\"L10142\" class=\"blob-num js-line-number\" data-line-number=\"10142\"></td>\n        <td id=\"LC10142\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">child</span>, <span class=\"pl-smi\">parent</span>) { <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> key <span class=\"pl-k\">in</span> parent) { <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(parent, key)) child[key] <span class=\"pl-k\">=</span> parent[key]; } <span class=\"pl-k\">function</span> <span class=\"pl-en\">ctor</span>() { <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span> <span class=\"pl-k\">=</span> child; } <span class=\"pl-smi\">ctor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">ctor</span>(); <span class=\"pl-smi\">child</span>.<span class=\"pl-smi\">__super__</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-k\">return</span> child; },</td>\n      </tr>\n      <tr>\n        <td id=\"L10143\" class=\"blob-num js-line-number\" data-line-number=\"10143\"></td>\n        <td id=\"LC10143\" class=\"blob-code blob-code-inner js-file-line\">    hasProp <span class=\"pl-k\">=</span> {}.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10144\" class=\"blob-num js-line-number\" data-line-number=\"10144\"></td>\n        <td id=\"LC10144\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10145\" class=\"blob-num js-line-number\" data-line-number=\"10145\"></td>\n        <td id=\"LC10145\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10146\" class=\"blob-num js-line-number\" data-line-number=\"10146\"></td>\n        <td id=\"LC10146\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10147\" class=\"blob-num js-line-number\" data-line-number=\"10147\"></td>\n        <td id=\"LC10147\" class=\"blob-code blob-code-inner js-file-line\">  isObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/lang/isObject<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10148\" class=\"blob-num js-line-number\" data-line-number=\"10148\"></td>\n        <td id=\"LC10148\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10149\" class=\"blob-num js-line-number\" data-line-number=\"10149\"></td>\n        <td id=\"LC10149\" class=\"blob-code blob-code-inner js-file-line\">  isArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/lang/isArray<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10150\" class=\"blob-num js-line-number\" data-line-number=\"10150\"></td>\n        <td id=\"LC10150\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10151\" class=\"blob-num js-line-number\" data-line-number=\"10151\"></td>\n        <td id=\"LC10151\" class=\"blob-code blob-code-inner js-file-line\">  isFunction <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/lang/isFunction<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10152\" class=\"blob-num js-line-number\" data-line-number=\"10152\"></td>\n        <td id=\"LC10152\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10153\" class=\"blob-num js-line-number\" data-line-number=\"10153\"></td>\n        <td id=\"LC10153\" class=\"blob-code blob-code-inner js-file-line\">  every <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/collection/every<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10154\" class=\"blob-num js-line-number\" data-line-number=\"10154\"></td>\n        <td id=\"LC10154\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10155\" class=\"blob-num js-line-number\" data-line-number=\"10155\"></td>\n        <td id=\"LC10155\" class=\"blob-code blob-code-inner js-file-line\">  XMLNode <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLNode<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10156\" class=\"blob-num js-line-number\" data-line-number=\"10156\"></td>\n        <td id=\"LC10156\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10157\" class=\"blob-num js-line-number\" data-line-number=\"10157\"></td>\n        <td id=\"LC10157\" class=\"blob-code blob-code-inner js-file-line\">  XMLAttribute <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLAttribute<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10158\" class=\"blob-num js-line-number\" data-line-number=\"10158\"></td>\n        <td id=\"LC10158\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10159\" class=\"blob-num js-line-number\" data-line-number=\"10159\"></td>\n        <td id=\"LC10159\" class=\"blob-code blob-code-inner js-file-line\">  XMLProcessingInstruction <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLProcessingInstruction<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10160\" class=\"blob-num js-line-number\" data-line-number=\"10160\"></td>\n        <td id=\"LC10160\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10161\" class=\"blob-num js-line-number\" data-line-number=\"10161\"></td>\n        <td id=\"LC10161\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLElement <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">superClass</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10162\" class=\"blob-num js-line-number\" data-line-number=\"10162\"></td>\n        <td id=\"LC10162\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span>(XMLElement, superClass);</td>\n      </tr>\n      <tr>\n        <td id=\"L10163\" class=\"blob-num js-line-number\" data-line-number=\"10163\"></td>\n        <td id=\"LC10163\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10164\" class=\"blob-num js-line-number\" data-line-number=\"10164\"></td>\n        <td id=\"LC10164\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLElement</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">attributes</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10165\" class=\"blob-num js-line-number\" data-line-number=\"10165\"></td>\n        <td id=\"LC10165\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">XMLElement</span>.<span class=\"pl-smi\">__super__</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, parent);</td>\n      </tr>\n      <tr>\n        <td id=\"L10166\" class=\"blob-num js-line-number\" data-line-number=\"10166\"></td>\n        <td id=\"LC10166\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10167\" class=\"blob-num js-line-number\" data-line-number=\"10167\"></td>\n        <td id=\"LC10167\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing element name<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10168\" class=\"blob-num js-line-number\" data-line-number=\"10168\"></td>\n        <td id=\"LC10168\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10169\" class=\"blob-num js-line-number\" data-line-number=\"10169\"></td>\n        <td id=\"LC10169\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">eleName</span>(name);</td>\n      </tr>\n      <tr>\n        <td id=\"L10170\" class=\"blob-num js-line-number\" data-line-number=\"10170\"></td>\n        <td id=\"LC10170\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span> <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L10171\" class=\"blob-num js-line-number\" data-line-number=\"10171\"></td>\n        <td id=\"LC10171\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">instructions</span> <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L10172\" class=\"blob-num js-line-number\" data-line-number=\"10172\"></td>\n        <td id=\"LC10172\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">attributes</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L10173\" class=\"blob-num js-line-number\" data-line-number=\"10173\"></td>\n        <td id=\"LC10173\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (attributes <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10174\" class=\"blob-num js-line-number\" data-line-number=\"10174\"></td>\n        <td id=\"LC10174\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-en\">attribute</span>(attributes);</td>\n      </tr>\n      <tr>\n        <td id=\"L10175\" class=\"blob-num js-line-number\" data-line-number=\"10175\"></td>\n        <td id=\"LC10175\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10176\" class=\"blob-num js-line-number\" data-line-number=\"10176\"></td>\n        <td id=\"LC10176\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L10177\" class=\"blob-num js-line-number\" data-line-number=\"10177\"></td>\n        <td id=\"LC10177\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10178\" class=\"blob-num js-line-number\" data-line-number=\"10178\"></td>\n        <td id=\"LC10178\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLElement</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10179\" class=\"blob-num js-line-number\" data-line-number=\"10179\"></td>\n        <td id=\"LC10179\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> att, attName, clonedSelf, i, len, pi, ref, ref1;</td>\n      </tr>\n      <tr>\n        <td id=\"L10180\" class=\"blob-num js-line-number\" data-line-number=\"10180\"></td>\n        <td id=\"LC10180\" class=\"blob-code blob-code-inner js-file-line\">      clonedSelf <span class=\"pl-k\">=</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLElement</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10181\" class=\"blob-num js-line-number\" data-line-number=\"10181\"></td>\n        <td id=\"LC10181\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">clonedSelf</span>.<span class=\"pl-smi\">isRoot</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10182\" class=\"blob-num js-line-number\" data-line-number=\"10182\"></td>\n        <td id=\"LC10182\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">clonedSelf</span>.<span class=\"pl-smi\">documentObject</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10183\" class=\"blob-num js-line-number\" data-line-number=\"10183\"></td>\n        <td id=\"LC10183\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10184\" class=\"blob-num js-line-number\" data-line-number=\"10184\"></td>\n        <td id=\"LC10184\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">clonedSelf</span>.<span class=\"pl-c1\">attributes</span> <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L10185\" class=\"blob-num js-line-number\" data-line-number=\"10185\"></td>\n        <td id=\"LC10185\" class=\"blob-code blob-code-inner js-file-line\">      ref <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">attributes</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10186\" class=\"blob-num js-line-number\" data-line-number=\"10186\"></td>\n        <td id=\"LC10186\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (attName <span class=\"pl-k\">in</span> ref) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10187\" class=\"blob-num js-line-number\" data-line-number=\"10187\"></td>\n        <td id=\"LC10187\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(ref, attName)) <span class=\"pl-k\">continue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10188\" class=\"blob-num js-line-number\" data-line-number=\"10188\"></td>\n        <td id=\"LC10188\" class=\"blob-code blob-code-inner js-file-line\">        att <span class=\"pl-k\">=</span> ref[attName];</td>\n      </tr>\n      <tr>\n        <td id=\"L10189\" class=\"blob-num js-line-number\" data-line-number=\"10189\"></td>\n        <td id=\"LC10189\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">clonedSelf</span>.<span class=\"pl-c1\">attributes</span>[attName] <span class=\"pl-k\">=</span> <span class=\"pl-smi\">att</span>.<span class=\"pl-en\">clone</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10190\" class=\"blob-num js-line-number\" data-line-number=\"10190\"></td>\n        <td id=\"LC10190\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10191\" class=\"blob-num js-line-number\" data-line-number=\"10191\"></td>\n        <td id=\"LC10191\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">clonedSelf</span>.<span class=\"pl-smi\">instructions</span> <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L10192\" class=\"blob-num js-line-number\" data-line-number=\"10192\"></td>\n        <td id=\"LC10192\" class=\"blob-code blob-code-inner js-file-line\">      ref1 <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">instructions</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10193\" class=\"blob-num js-line-number\" data-line-number=\"10193\"></td>\n        <td id=\"LC10193\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ref1</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">&lt;</span> len; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10194\" class=\"blob-num js-line-number\" data-line-number=\"10194\"></td>\n        <td id=\"LC10194\" class=\"blob-code blob-code-inner js-file-line\">        pi <span class=\"pl-k\">=</span> ref1[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L10195\" class=\"blob-num js-line-number\" data-line-number=\"10195\"></td>\n        <td id=\"LC10195\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">clonedSelf</span>.<span class=\"pl-smi\">instructions</span>.<span class=\"pl-c1\">push</span>(<span class=\"pl-smi\">pi</span>.<span class=\"pl-en\">clone</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L10196\" class=\"blob-num js-line-number\" data-line-number=\"10196\"></td>\n        <td id=\"LC10196\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10197\" class=\"blob-num js-line-number\" data-line-number=\"10197\"></td>\n        <td id=\"LC10197\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">clonedSelf</span>.<span class=\"pl-smi\">children</span> <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L10198\" class=\"blob-num js-line-number\" data-line-number=\"10198\"></td>\n        <td id=\"LC10198\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-en\">forEach</span>(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">child</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10199\" class=\"blob-num js-line-number\" data-line-number=\"10199\"></td>\n        <td id=\"LC10199\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> clonedChild;</td>\n      </tr>\n      <tr>\n        <td id=\"L10200\" class=\"blob-num js-line-number\" data-line-number=\"10200\"></td>\n        <td id=\"LC10200\" class=\"blob-code blob-code-inner js-file-line\">        clonedChild <span class=\"pl-k\">=</span> <span class=\"pl-smi\">child</span>.<span class=\"pl-en\">clone</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10201\" class=\"blob-num js-line-number\" data-line-number=\"10201\"></td>\n        <td id=\"LC10201\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">clonedChild</span>.<span class=\"pl-c1\">parent</span> <span class=\"pl-k\">=</span> clonedSelf;</td>\n      </tr>\n      <tr>\n        <td id=\"L10202\" class=\"blob-num js-line-number\" data-line-number=\"10202\"></td>\n        <td id=\"LC10202\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-smi\">clonedSelf</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(clonedChild);</td>\n      </tr>\n      <tr>\n        <td id=\"L10203\" class=\"blob-num js-line-number\" data-line-number=\"10203\"></td>\n        <td id=\"LC10203\" class=\"blob-code blob-code-inner js-file-line\">      });</td>\n      </tr>\n      <tr>\n        <td id=\"L10204\" class=\"blob-num js-line-number\" data-line-number=\"10204\"></td>\n        <td id=\"LC10204\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> clonedSelf;</td>\n      </tr>\n      <tr>\n        <td id=\"L10205\" class=\"blob-num js-line-number\" data-line-number=\"10205\"></td>\n        <td id=\"LC10205\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10206\" class=\"blob-num js-line-number\" data-line-number=\"10206\"></td>\n        <td id=\"LC10206\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10207\" class=\"blob-num js-line-number\" data-line-number=\"10207\"></td>\n        <td id=\"LC10207\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLElement</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">attribute</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10208\" class=\"blob-num js-line-number\" data-line-number=\"10208\"></td>\n        <td id=\"LC10208\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> attName, attValue;</td>\n      </tr>\n      <tr>\n        <td id=\"L10209\" class=\"blob-num js-line-number\" data-line-number=\"10209\"></td>\n        <td id=\"LC10209\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10210\" class=\"blob-num js-line-number\" data-line-number=\"10210\"></td>\n        <td id=\"LC10210\" class=\"blob-code blob-code-inner js-file-line\">        name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">valueOf</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10211\" class=\"blob-num js-line-number\" data-line-number=\"10211\"></td>\n        <td id=\"LC10211\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10212\" class=\"blob-num js-line-number\" data-line-number=\"10212\"></td>\n        <td id=\"LC10212\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isObject</span>(name)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10213\" class=\"blob-num js-line-number\" data-line-number=\"10213\"></td>\n        <td id=\"LC10213\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">for</span> (attName <span class=\"pl-k\">in</span> name) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10214\" class=\"blob-num js-line-number\" data-line-number=\"10214\"></td>\n        <td id=\"LC10214\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(name, attName)) <span class=\"pl-k\">continue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10215\" class=\"blob-num js-line-number\" data-line-number=\"10215\"></td>\n        <td id=\"LC10215\" class=\"blob-code blob-code-inner js-file-line\">          attValue <span class=\"pl-k\">=</span> name[attName];</td>\n      </tr>\n      <tr>\n        <td id=\"L10216\" class=\"blob-num js-line-number\" data-line-number=\"10216\"></td>\n        <td id=\"LC10216\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-v\">this</span>.<span class=\"pl-en\">attribute</span>(attName, attValue);</td>\n      </tr>\n      <tr>\n        <td id=\"L10217\" class=\"blob-num js-line-number\" data-line-number=\"10217\"></td>\n        <td id=\"LC10217\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10218\" class=\"blob-num js-line-number\" data-line-number=\"10218\"></td>\n        <td id=\"LC10218\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L10219\" class=\"blob-num js-line-number\" data-line-number=\"10219\"></td>\n        <td id=\"LC10219\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isFunction</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10220\" class=\"blob-num js-line-number\" data-line-number=\"10220\"></td>\n        <td id=\"LC10220\" class=\"blob-code blob-code-inner js-file-line\">          value <span class=\"pl-k\">=</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">apply</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10221\" class=\"blob-num js-line-number\" data-line-number=\"10221\"></td>\n        <td id=\"LC10221\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10222\" class=\"blob-num js-line-number\" data-line-number=\"10222\"></td>\n        <td id=\"LC10222\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-c1\">options</span>.<span class=\"pl-smi\">skipNullAttributes</span> <span class=\"pl-k\">||</span> (value <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10223\" class=\"blob-num js-line-number\" data-line-number=\"10223\"></td>\n        <td id=\"LC10223\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">attributes</span>[name] <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLAttribute</span>(<span class=\"pl-v\">this</span>, name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10224\" class=\"blob-num js-line-number\" data-line-number=\"10224\"></td>\n        <td id=\"LC10224\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10225\" class=\"blob-num js-line-number\" data-line-number=\"10225\"></td>\n        <td id=\"LC10225\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10226\" class=\"blob-num js-line-number\" data-line-number=\"10226\"></td>\n        <td id=\"LC10226\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10227\" class=\"blob-num js-line-number\" data-line-number=\"10227\"></td>\n        <td id=\"LC10227\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10228\" class=\"blob-num js-line-number\" data-line-number=\"10228\"></td>\n        <td id=\"LC10228\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10229\" class=\"blob-num js-line-number\" data-line-number=\"10229\"></td>\n        <td id=\"LC10229\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLElement</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">removeAttribute</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10230\" class=\"blob-num js-line-number\" data-line-number=\"10230\"></td>\n        <td id=\"LC10230\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> attName, i, len;</td>\n      </tr>\n      <tr>\n        <td id=\"L10231\" class=\"blob-num js-line-number\" data-line-number=\"10231\"></td>\n        <td id=\"LC10231\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10232\" class=\"blob-num js-line-number\" data-line-number=\"10232\"></td>\n        <td id=\"LC10232\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing attribute name<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10233\" class=\"blob-num js-line-number\" data-line-number=\"10233\"></td>\n        <td id=\"LC10233\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10234\" class=\"blob-num js-line-number\" data-line-number=\"10234\"></td>\n        <td id=\"LC10234\" class=\"blob-code blob-code-inner js-file-line\">      name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">valueOf</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10235\" class=\"blob-num js-line-number\" data-line-number=\"10235\"></td>\n        <td id=\"LC10235\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isArray</span>(name)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10236\" class=\"blob-num js-line-number\" data-line-number=\"10236\"></td>\n        <td id=\"LC10236\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">&lt;</span> len; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10237\" class=\"blob-num js-line-number\" data-line-number=\"10237\"></td>\n        <td id=\"LC10237\" class=\"blob-code blob-code-inner js-file-line\">          attName <span class=\"pl-k\">=</span> name[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L10238\" class=\"blob-num js-line-number\" data-line-number=\"10238\"></td>\n        <td id=\"LC10238\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">delete</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">attributes</span>[attName];</td>\n      </tr>\n      <tr>\n        <td id=\"L10239\" class=\"blob-num js-line-number\" data-line-number=\"10239\"></td>\n        <td id=\"LC10239\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10240\" class=\"blob-num js-line-number\" data-line-number=\"10240\"></td>\n        <td id=\"LC10240\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L10241\" class=\"blob-num js-line-number\" data-line-number=\"10241\"></td>\n        <td id=\"LC10241\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">delete</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">attributes</span>[name];</td>\n      </tr>\n      <tr>\n        <td id=\"L10242\" class=\"blob-num js-line-number\" data-line-number=\"10242\"></td>\n        <td id=\"LC10242\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10243\" class=\"blob-num js-line-number\" data-line-number=\"10243\"></td>\n        <td id=\"LC10243\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10244\" class=\"blob-num js-line-number\" data-line-number=\"10244\"></td>\n        <td id=\"LC10244\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10245\" class=\"blob-num js-line-number\" data-line-number=\"10245\"></td>\n        <td id=\"LC10245\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10246\" class=\"blob-num js-line-number\" data-line-number=\"10246\"></td>\n        <td id=\"LC10246\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLElement</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">instruction</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">target</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10247\" class=\"blob-num js-line-number\" data-line-number=\"10247\"></td>\n        <td id=\"LC10247\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> i, insTarget, insValue, instruction, len;</td>\n      </tr>\n      <tr>\n        <td id=\"L10248\" class=\"blob-num js-line-number\" data-line-number=\"10248\"></td>\n        <td id=\"LC10248\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (target <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10249\" class=\"blob-num js-line-number\" data-line-number=\"10249\"></td>\n        <td id=\"LC10249\" class=\"blob-code blob-code-inner js-file-line\">        target <span class=\"pl-k\">=</span> <span class=\"pl-smi\">target</span>.<span class=\"pl-c1\">valueOf</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10250\" class=\"blob-num js-line-number\" data-line-number=\"10250\"></td>\n        <td id=\"LC10250\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10251\" class=\"blob-num js-line-number\" data-line-number=\"10251\"></td>\n        <td id=\"LC10251\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10252\" class=\"blob-num js-line-number\" data-line-number=\"10252\"></td>\n        <td id=\"LC10252\" class=\"blob-code blob-code-inner js-file-line\">        value <span class=\"pl-k\">=</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">valueOf</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10253\" class=\"blob-num js-line-number\" data-line-number=\"10253\"></td>\n        <td id=\"LC10253\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10254\" class=\"blob-num js-line-number\" data-line-number=\"10254\"></td>\n        <td id=\"LC10254\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isArray</span>(target)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10255\" class=\"blob-num js-line-number\" data-line-number=\"10255\"></td>\n        <td id=\"LC10255\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">target</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">&lt;</span> len; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10256\" class=\"blob-num js-line-number\" data-line-number=\"10256\"></td>\n        <td id=\"LC10256\" class=\"blob-code blob-code-inner js-file-line\">          insTarget <span class=\"pl-k\">=</span> target[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L10257\" class=\"blob-num js-line-number\" data-line-number=\"10257\"></td>\n        <td id=\"LC10257\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-v\">this</span>.<span class=\"pl-en\">instruction</span>(insTarget);</td>\n      </tr>\n      <tr>\n        <td id=\"L10258\" class=\"blob-num js-line-number\" data-line-number=\"10258\"></td>\n        <td id=\"LC10258\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10259\" class=\"blob-num js-line-number\" data-line-number=\"10259\"></td>\n        <td id=\"LC10259\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isObject</span>(target)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10260\" class=\"blob-num js-line-number\" data-line-number=\"10260\"></td>\n        <td id=\"LC10260\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">for</span> (insTarget <span class=\"pl-k\">in</span> target) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10261\" class=\"blob-num js-line-number\" data-line-number=\"10261\"></td>\n        <td id=\"LC10261\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(target, insTarget)) <span class=\"pl-k\">continue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10262\" class=\"blob-num js-line-number\" data-line-number=\"10262\"></td>\n        <td id=\"LC10262\" class=\"blob-code blob-code-inner js-file-line\">          insValue <span class=\"pl-k\">=</span> target[insTarget];</td>\n      </tr>\n      <tr>\n        <td id=\"L10263\" class=\"blob-num js-line-number\" data-line-number=\"10263\"></td>\n        <td id=\"LC10263\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-v\">this</span>.<span class=\"pl-en\">instruction</span>(insTarget, insValue);</td>\n      </tr>\n      <tr>\n        <td id=\"L10264\" class=\"blob-num js-line-number\" data-line-number=\"10264\"></td>\n        <td id=\"LC10264\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10265\" class=\"blob-num js-line-number\" data-line-number=\"10265\"></td>\n        <td id=\"LC10265\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L10266\" class=\"blob-num js-line-number\" data-line-number=\"10266\"></td>\n        <td id=\"LC10266\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isFunction</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10267\" class=\"blob-num js-line-number\" data-line-number=\"10267\"></td>\n        <td id=\"LC10267\" class=\"blob-code blob-code-inner js-file-line\">          value <span class=\"pl-k\">=</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">apply</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10268\" class=\"blob-num js-line-number\" data-line-number=\"10268\"></td>\n        <td id=\"LC10268\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10269\" class=\"blob-num js-line-number\" data-line-number=\"10269\"></td>\n        <td id=\"LC10269\" class=\"blob-code blob-code-inner js-file-line\">        instruction <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLProcessingInstruction</span>(<span class=\"pl-v\">this</span>, target, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10270\" class=\"blob-num js-line-number\" data-line-number=\"10270\"></td>\n        <td id=\"LC10270\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">instructions</span>.<span class=\"pl-c1\">push</span>(instruction);</td>\n      </tr>\n      <tr>\n        <td id=\"L10271\" class=\"blob-num js-line-number\" data-line-number=\"10271\"></td>\n        <td id=\"LC10271\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10272\" class=\"blob-num js-line-number\" data-line-number=\"10272\"></td>\n        <td id=\"LC10272\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10273\" class=\"blob-num js-line-number\" data-line-number=\"10273\"></td>\n        <td id=\"LC10273\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10274\" class=\"blob-num js-line-number\" data-line-number=\"10274\"></td>\n        <td id=\"LC10274\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10275\" class=\"blob-num js-line-number\" data-line-number=\"10275\"></td>\n        <td id=\"LC10275\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLElement</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10276\" class=\"blob-num js-line-number\" data-line-number=\"10276\"></td>\n        <td id=\"LC10276\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> att, child, i, indent, instruction, j, len, len1, name, newline, offset, pretty, r, ref, ref1, ref2, ref3, ref4, ref5, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L10277\" class=\"blob-num js-line-number\" data-line-number=\"10277\"></td>\n        <td id=\"LC10277\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10278\" class=\"blob-num js-line-number\" data-line-number=\"10278\"></td>\n        <td id=\"LC10278\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10279\" class=\"blob-num js-line-number\" data-line-number=\"10279\"></td>\n        <td id=\"LC10279\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10280\" class=\"blob-num js-line-number\" data-line-number=\"10280\"></td>\n        <td id=\"LC10280\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10281\" class=\"blob-num js-line-number\" data-line-number=\"10281\"></td>\n        <td id=\"LC10281\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10282\" class=\"blob-num js-line-number\" data-line-number=\"10282\"></td>\n        <td id=\"LC10282\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L10283\" class=\"blob-num js-line-number\" data-line-number=\"10283\"></td>\n        <td id=\"LC10283\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10284\" class=\"blob-num js-line-number\" data-line-number=\"10284\"></td>\n        <td id=\"LC10284\" class=\"blob-code blob-code-inner js-file-line\">      ref3 <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">instructions</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10285\" class=\"blob-num js-line-number\" data-line-number=\"10285\"></td>\n        <td id=\"LC10285\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (i <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ref3</span>.<span class=\"pl-c1\">length</span>; i <span class=\"pl-k\">&lt;</span> len; i<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10286\" class=\"blob-num js-line-number\" data-line-number=\"10286\"></td>\n        <td id=\"LC10286\" class=\"blob-code blob-code-inner js-file-line\">        instruction <span class=\"pl-k\">=</span> ref3[i];</td>\n      </tr>\n      <tr>\n        <td id=\"L10287\" class=\"blob-num js-line-number\" data-line-number=\"10287\"></td>\n        <td id=\"LC10287\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-smi\">instruction</span>.<span class=\"pl-c1\">toString</span>(options, level <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10288\" class=\"blob-num js-line-number\" data-line-number=\"10288\"></td>\n        <td id=\"LC10288\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10289\" class=\"blob-num js-line-number\" data-line-number=\"10289\"></td>\n        <td id=\"LC10289\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10290\" class=\"blob-num js-line-number\" data-line-number=\"10290\"></td>\n        <td id=\"LC10290\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L10291\" class=\"blob-num js-line-number\" data-line-number=\"10291\"></td>\n        <td id=\"LC10291\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10292\" class=\"blob-num js-line-number\" data-line-number=\"10292\"></td>\n        <td id=\"LC10292\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10293\" class=\"blob-num js-line-number\" data-line-number=\"10293\"></td>\n        <td id=\"LC10293\" class=\"blob-code blob-code-inner js-file-line\">      ref4 <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">attributes</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10294\" class=\"blob-num js-line-number\" data-line-number=\"10294\"></td>\n        <td id=\"LC10294\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (name <span class=\"pl-k\">in</span> ref4) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10295\" class=\"blob-num js-line-number\" data-line-number=\"10295\"></td>\n        <td id=\"LC10295\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(ref4, name)) <span class=\"pl-k\">continue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10296\" class=\"blob-num js-line-number\" data-line-number=\"10296\"></td>\n        <td id=\"LC10296\" class=\"blob-code blob-code-inner js-file-line\">        att <span class=\"pl-k\">=</span> ref4[name];</td>\n      </tr>\n      <tr>\n        <td id=\"L10297\" class=\"blob-num js-line-number\" data-line-number=\"10297\"></td>\n        <td id=\"LC10297\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-smi\">att</span>.<span class=\"pl-c1\">toString</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L10298\" class=\"blob-num js-line-number\" data-line-number=\"10298\"></td>\n        <td id=\"LC10298\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10299\" class=\"blob-num js-line-number\" data-line-number=\"10299\"></td>\n        <td id=\"LC10299\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">||</span> <span class=\"pl-en\">every</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">e</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10300\" class=\"blob-num js-line-number\" data-line-number=\"10300\"></td>\n        <td id=\"LC10300\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-smi\">e</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">===</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10301\" class=\"blob-num js-line-number\" data-line-number=\"10301\"></td>\n        <td id=\"LC10301\" class=\"blob-code blob-code-inner js-file-line\">      })) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10302\" class=\"blob-num js-line-number\" data-line-number=\"10302\"></td>\n        <td id=\"LC10302\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>/&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10303\" class=\"blob-num js-line-number\" data-line-number=\"10303\"></td>\n        <td id=\"LC10303\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10304\" class=\"blob-num js-line-number\" data-line-number=\"10304\"></td>\n        <td id=\"LC10304\" class=\"blob-code blob-code-inner js-file-line\">          r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L10305\" class=\"blob-num js-line-number\" data-line-number=\"10305\"></td>\n        <td id=\"LC10305\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10306\" class=\"blob-num js-line-number\" data-line-number=\"10306\"></td>\n        <td id=\"LC10306\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (pretty <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">&amp;&amp;</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>[<span class=\"pl-c1\">0</span>].<span class=\"pl-c1\">value</span> <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10307\" class=\"blob-num js-line-number\" data-line-number=\"10307\"></td>\n        <td id=\"LC10307\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10308\" class=\"blob-num js-line-number\" data-line-number=\"10308\"></td>\n        <td id=\"LC10308\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>[<span class=\"pl-c1\">0</span>].<span class=\"pl-c1\">value</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10309\" class=\"blob-num js-line-number\" data-line-number=\"10309\"></td>\n        <td id=\"LC10309\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;/<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10310\" class=\"blob-num js-line-number\" data-line-number=\"10310\"></td>\n        <td id=\"LC10310\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L10311\" class=\"blob-num js-line-number\" data-line-number=\"10311\"></td>\n        <td id=\"LC10311\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L10312\" class=\"blob-num js-line-number\" data-line-number=\"10312\"></td>\n        <td id=\"LC10312\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10313\" class=\"blob-num js-line-number\" data-line-number=\"10313\"></td>\n        <td id=\"LC10313\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10314\" class=\"blob-num js-line-number\" data-line-number=\"10314\"></td>\n        <td id=\"LC10314\" class=\"blob-code blob-code-inner js-file-line\">          r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L10315\" class=\"blob-num js-line-number\" data-line-number=\"10315\"></td>\n        <td id=\"LC10315\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10316\" class=\"blob-num js-line-number\" data-line-number=\"10316\"></td>\n        <td id=\"LC10316\" class=\"blob-code blob-code-inner js-file-line\">        ref5 <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10317\" class=\"blob-num js-line-number\" data-line-number=\"10317\"></td>\n        <td id=\"LC10317\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">for</span> (j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, len1 <span class=\"pl-k\">=</span> <span class=\"pl-smi\">ref5</span>.<span class=\"pl-c1\">length</span>; j <span class=\"pl-k\">&lt;</span> len1; j<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10318\" class=\"blob-num js-line-number\" data-line-number=\"10318\"></td>\n        <td id=\"LC10318\" class=\"blob-code blob-code-inner js-file-line\">          child <span class=\"pl-k\">=</span> ref5[j];</td>\n      </tr>\n      <tr>\n        <td id=\"L10319\" class=\"blob-num js-line-number\" data-line-number=\"10319\"></td>\n        <td id=\"LC10319\" class=\"blob-code blob-code-inner js-file-line\">          r <span class=\"pl-k\">+=</span> <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">toString</span>(options, level <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10320\" class=\"blob-num js-line-number\" data-line-number=\"10320\"></td>\n        <td id=\"LC10320\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10321\" class=\"blob-num js-line-number\" data-line-number=\"10321\"></td>\n        <td id=\"LC10321\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10322\" class=\"blob-num js-line-number\" data-line-number=\"10322\"></td>\n        <td id=\"LC10322\" class=\"blob-code blob-code-inner js-file-line\">          r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L10323\" class=\"blob-num js-line-number\" data-line-number=\"10323\"></td>\n        <td id=\"LC10323\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10324\" class=\"blob-num js-line-number\" data-line-number=\"10324\"></td>\n        <td id=\"LC10324\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;/<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10325\" class=\"blob-num js-line-number\" data-line-number=\"10325\"></td>\n        <td id=\"LC10325\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10326\" class=\"blob-num js-line-number\" data-line-number=\"10326\"></td>\n        <td id=\"LC10326\" class=\"blob-code blob-code-inner js-file-line\">          r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L10327\" class=\"blob-num js-line-number\" data-line-number=\"10327\"></td>\n        <td id=\"LC10327\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10328\" class=\"blob-num js-line-number\" data-line-number=\"10328\"></td>\n        <td id=\"LC10328\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10329\" class=\"blob-num js-line-number\" data-line-number=\"10329\"></td>\n        <td id=\"LC10329\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L10330\" class=\"blob-num js-line-number\" data-line-number=\"10330\"></td>\n        <td id=\"LC10330\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10331\" class=\"blob-num js-line-number\" data-line-number=\"10331\"></td>\n        <td id=\"LC10331\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10332\" class=\"blob-num js-line-number\" data-line-number=\"10332\"></td>\n        <td id=\"LC10332\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLElement</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">att</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10333\" class=\"blob-num js-line-number\" data-line-number=\"10333\"></td>\n        <td id=\"LC10333\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">attribute</span>(name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10334\" class=\"blob-num js-line-number\" data-line-number=\"10334\"></td>\n        <td id=\"LC10334\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10335\" class=\"blob-num js-line-number\" data-line-number=\"10335\"></td>\n        <td id=\"LC10335\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10336\" class=\"blob-num js-line-number\" data-line-number=\"10336\"></td>\n        <td id=\"LC10336\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLElement</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">ins</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">target</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10337\" class=\"blob-num js-line-number\" data-line-number=\"10337\"></td>\n        <td id=\"LC10337\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">instruction</span>(target, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10338\" class=\"blob-num js-line-number\" data-line-number=\"10338\"></td>\n        <td id=\"LC10338\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10339\" class=\"blob-num js-line-number\" data-line-number=\"10339\"></td>\n        <td id=\"LC10339\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10340\" class=\"blob-num js-line-number\" data-line-number=\"10340\"></td>\n        <td id=\"LC10340\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLElement</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">a</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10341\" class=\"blob-num js-line-number\" data-line-number=\"10341\"></td>\n        <td id=\"LC10341\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">attribute</span>(name, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10342\" class=\"blob-num js-line-number\" data-line-number=\"10342\"></td>\n        <td id=\"LC10342\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10343\" class=\"blob-num js-line-number\" data-line-number=\"10343\"></td>\n        <td id=\"LC10343\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10344\" class=\"blob-num js-line-number\" data-line-number=\"10344\"></td>\n        <td id=\"LC10344\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLElement</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">i</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">target</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10345\" class=\"blob-num js-line-number\" data-line-number=\"10345\"></td>\n        <td id=\"LC10345\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">instruction</span>(target, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10346\" class=\"blob-num js-line-number\" data-line-number=\"10346\"></td>\n        <td id=\"LC10346\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10347\" class=\"blob-num js-line-number\" data-line-number=\"10347\"></td>\n        <td id=\"LC10347\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10348\" class=\"blob-num js-line-number\" data-line-number=\"10348\"></td>\n        <td id=\"LC10348\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLElement;</td>\n      </tr>\n      <tr>\n        <td id=\"L10349\" class=\"blob-num js-line-number\" data-line-number=\"10349\"></td>\n        <td id=\"LC10349\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10350\" class=\"blob-num js-line-number\" data-line-number=\"10350\"></td>\n        <td id=\"LC10350\" class=\"blob-code blob-code-inner js-file-line\">  })(XMLNode);</td>\n      </tr>\n      <tr>\n        <td id=\"L10351\" class=\"blob-num js-line-number\" data-line-number=\"10351\"></td>\n        <td id=\"LC10351\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10352\" class=\"blob-num js-line-number\" data-line-number=\"10352\"></td>\n        <td id=\"LC10352\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10353\" class=\"blob-num js-line-number\" data-line-number=\"10353\"></td>\n        <td id=\"LC10353\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10354\" class=\"blob-num js-line-number\" data-line-number=\"10354\"></td>\n        <td id=\"LC10354\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLAttribute<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">66</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLNode<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">77</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLProcessingInstruction<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">78</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/collection/every<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">83</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/lang/isArray<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">117</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/lang/isFunction<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">119</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/lang/isObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">121</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">77</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L10355\" class=\"blob-num js-line-number\" data-line-number=\"10355\"></td>\n        <td id=\"LC10355\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10356\" class=\"blob-num js-line-number\" data-line-number=\"10356\"></td>\n        <td id=\"LC10356\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLCData, XMLComment, XMLDeclaration, XMLDocType, XMLElement, XMLNode, XMLRaw, XMLText, isArray, isEmpty, isFunction, isObject,</td>\n      </tr>\n      <tr>\n        <td id=\"L10357\" class=\"blob-num js-line-number\" data-line-number=\"10357\"></td>\n        <td id=\"LC10357\" class=\"blob-code blob-code-inner js-file-line\">    hasProp <span class=\"pl-k\">=</span> {}.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10358\" class=\"blob-num js-line-number\" data-line-number=\"10358\"></td>\n        <td id=\"LC10358\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10359\" class=\"blob-num js-line-number\" data-line-number=\"10359\"></td>\n        <td id=\"LC10359\" class=\"blob-code blob-code-inner js-file-line\">  isObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/lang/isObject<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10360\" class=\"blob-num js-line-number\" data-line-number=\"10360\"></td>\n        <td id=\"LC10360\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10361\" class=\"blob-num js-line-number\" data-line-number=\"10361\"></td>\n        <td id=\"LC10361\" class=\"blob-code blob-code-inner js-file-line\">  isArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/lang/isArray<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10362\" class=\"blob-num js-line-number\" data-line-number=\"10362\"></td>\n        <td id=\"LC10362\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10363\" class=\"blob-num js-line-number\" data-line-number=\"10363\"></td>\n        <td id=\"LC10363\" class=\"blob-code blob-code-inner js-file-line\">  isFunction <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/lang/isFunction<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10364\" class=\"blob-num js-line-number\" data-line-number=\"10364\"></td>\n        <td id=\"LC10364\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10365\" class=\"blob-num js-line-number\" data-line-number=\"10365\"></td>\n        <td id=\"LC10365\" class=\"blob-code blob-code-inner js-file-line\">  isEmpty <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/lang/isEmpty<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10366\" class=\"blob-num js-line-number\" data-line-number=\"10366\"></td>\n        <td id=\"LC10366\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10367\" class=\"blob-num js-line-number\" data-line-number=\"10367\"></td>\n        <td id=\"LC10367\" class=\"blob-code blob-code-inner js-file-line\">  XMLElement <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10368\" class=\"blob-num js-line-number\" data-line-number=\"10368\"></td>\n        <td id=\"LC10368\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10369\" class=\"blob-num js-line-number\" data-line-number=\"10369\"></td>\n        <td id=\"LC10369\" class=\"blob-code blob-code-inner js-file-line\">  XMLCData <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10370\" class=\"blob-num js-line-number\" data-line-number=\"10370\"></td>\n        <td id=\"LC10370\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10371\" class=\"blob-num js-line-number\" data-line-number=\"10371\"></td>\n        <td id=\"LC10371\" class=\"blob-code blob-code-inner js-file-line\">  XMLComment <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10372\" class=\"blob-num js-line-number\" data-line-number=\"10372\"></td>\n        <td id=\"LC10372\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10373\" class=\"blob-num js-line-number\" data-line-number=\"10373\"></td>\n        <td id=\"LC10373\" class=\"blob-code blob-code-inner js-file-line\">  XMLDeclaration <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10374\" class=\"blob-num js-line-number\" data-line-number=\"10374\"></td>\n        <td id=\"LC10374\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10375\" class=\"blob-num js-line-number\" data-line-number=\"10375\"></td>\n        <td id=\"LC10375\" class=\"blob-code blob-code-inner js-file-line\">  XMLDocType <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10376\" class=\"blob-num js-line-number\" data-line-number=\"10376\"></td>\n        <td id=\"LC10376\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10377\" class=\"blob-num js-line-number\" data-line-number=\"10377\"></td>\n        <td id=\"LC10377\" class=\"blob-code blob-code-inner js-file-line\">  XMLRaw <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10378\" class=\"blob-num js-line-number\" data-line-number=\"10378\"></td>\n        <td id=\"LC10378\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10379\" class=\"blob-num js-line-number\" data-line-number=\"10379\"></td>\n        <td id=\"LC10379\" class=\"blob-code blob-code-inner js-file-line\">  XMLText <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10380\" class=\"blob-num js-line-number\" data-line-number=\"10380\"></td>\n        <td id=\"LC10380\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10381\" class=\"blob-num js-line-number\" data-line-number=\"10381\"></td>\n        <td id=\"LC10381\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLNode <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10382\" class=\"blob-num js-line-number\" data-line-number=\"10382\"></td>\n        <td id=\"LC10382\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLNode</span>(<span class=\"pl-smi\">parent</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10383\" class=\"blob-num js-line-number\" data-line-number=\"10383\"></td>\n        <td id=\"LC10383\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span> <span class=\"pl-k\">=</span> parent;</td>\n      </tr>\n      <tr>\n        <td id=\"L10384\" class=\"blob-num js-line-number\" data-line-number=\"10384\"></td>\n        <td id=\"LC10384\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">options</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-c1\">options</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10385\" class=\"blob-num js-line-number\" data-line-number=\"10385\"></td>\n        <td id=\"LC10385\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">stringify</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10386\" class=\"blob-num js-line-number\" data-line-number=\"10386\"></td>\n        <td id=\"LC10386\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (XMLElement <span class=\"pl-k\">===</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10387\" class=\"blob-num js-line-number\" data-line-number=\"10387\"></td>\n        <td id=\"LC10387\" class=\"blob-code blob-code-inner js-file-line\">        XMLElement <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLElement<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10388\" class=\"blob-num js-line-number\" data-line-number=\"10388\"></td>\n        <td id=\"LC10388\" class=\"blob-code blob-code-inner js-file-line\">        XMLCData <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLCData<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10389\" class=\"blob-num js-line-number\" data-line-number=\"10389\"></td>\n        <td id=\"LC10389\" class=\"blob-code blob-code-inner js-file-line\">        XMLComment <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLComment<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10390\" class=\"blob-num js-line-number\" data-line-number=\"10390\"></td>\n        <td id=\"LC10390\" class=\"blob-code blob-code-inner js-file-line\">        XMLDeclaration <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLDeclaration<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10391\" class=\"blob-num js-line-number\" data-line-number=\"10391\"></td>\n        <td id=\"LC10391\" class=\"blob-code blob-code-inner js-file-line\">        XMLDocType <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLDocType<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10392\" class=\"blob-num js-line-number\" data-line-number=\"10392\"></td>\n        <td id=\"LC10392\" class=\"blob-code blob-code-inner js-file-line\">        XMLRaw <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLRaw<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10393\" class=\"blob-num js-line-number\" data-line-number=\"10393\"></td>\n        <td id=\"LC10393\" class=\"blob-code blob-code-inner js-file-line\">        XMLText <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLText<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10394\" class=\"blob-num js-line-number\" data-line-number=\"10394\"></td>\n        <td id=\"LC10394\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10395\" class=\"blob-num js-line-number\" data-line-number=\"10395\"></td>\n        <td id=\"LC10395\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L10396\" class=\"blob-num js-line-number\" data-line-number=\"10396\"></td>\n        <td id=\"LC10396\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10397\" class=\"blob-num js-line-number\" data-line-number=\"10397\"></td>\n        <td id=\"LC10397\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10398\" class=\"blob-num js-line-number\" data-line-number=\"10398\"></td>\n        <td id=\"LC10398\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Cannot clone generic XMLNode<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10399\" class=\"blob-num js-line-number\" data-line-number=\"10399\"></td>\n        <td id=\"LC10399\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10400\" class=\"blob-num js-line-number\" data-line-number=\"10400\"></td>\n        <td id=\"LC10400\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10401\" class=\"blob-num js-line-number\" data-line-number=\"10401\"></td>\n        <td id=\"LC10401\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">element</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">attributes</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10402\" class=\"blob-num js-line-number\" data-line-number=\"10402\"></td>\n        <td id=\"LC10402\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> item, j, key, lastChild, len, ref, val;</td>\n      </tr>\n      <tr>\n        <td id=\"L10403\" class=\"blob-num js-line-number\" data-line-number=\"10403\"></td>\n        <td id=\"LC10403\" class=\"blob-code blob-code-inner js-file-line\">      lastChild <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10404\" class=\"blob-num js-line-number\" data-line-number=\"10404\"></td>\n        <td id=\"LC10404\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (attributes <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10405\" class=\"blob-num js-line-number\" data-line-number=\"10405\"></td>\n        <td id=\"LC10405\" class=\"blob-code blob-code-inner js-file-line\">        attributes <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L10406\" class=\"blob-num js-line-number\" data-line-number=\"10406\"></td>\n        <td id=\"LC10406\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10407\" class=\"blob-num js-line-number\" data-line-number=\"10407\"></td>\n        <td id=\"LC10407\" class=\"blob-code blob-code-inner js-file-line\">      attributes <span class=\"pl-k\">=</span> <span class=\"pl-smi\">attributes</span>.<span class=\"pl-c1\">valueOf</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10408\" class=\"blob-num js-line-number\" data-line-number=\"10408\"></td>\n        <td id=\"LC10408\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isObject</span>(attributes)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10409\" class=\"blob-num js-line-number\" data-line-number=\"10409\"></td>\n        <td id=\"LC10409\" class=\"blob-code blob-code-inner js-file-line\">        ref <span class=\"pl-k\">=</span> [attributes, text], text <span class=\"pl-k\">=</span> ref[<span class=\"pl-c1\">0</span>], attributes <span class=\"pl-k\">=</span> ref[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L10410\" class=\"blob-num js-line-number\" data-line-number=\"10410\"></td>\n        <td id=\"LC10410\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10411\" class=\"blob-num js-line-number\" data-line-number=\"10411\"></td>\n        <td id=\"LC10411\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10412\" class=\"blob-num js-line-number\" data-line-number=\"10412\"></td>\n        <td id=\"LC10412\" class=\"blob-code blob-code-inner js-file-line\">        name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">valueOf</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10413\" class=\"blob-num js-line-number\" data-line-number=\"10413\"></td>\n        <td id=\"LC10413\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10414\" class=\"blob-num js-line-number\" data-line-number=\"10414\"></td>\n        <td id=\"LC10414\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isArray</span>(name)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10415\" class=\"blob-num js-line-number\" data-line-number=\"10415\"></td>\n        <td id=\"LC10415\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">for</span> (j <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>, len <span class=\"pl-k\">=</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">length</span>; j <span class=\"pl-k\">&lt;</span> len; j<span class=\"pl-k\">++</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10416\" class=\"blob-num js-line-number\" data-line-number=\"10416\"></td>\n        <td id=\"LC10416\" class=\"blob-code blob-code-inner js-file-line\">          item <span class=\"pl-k\">=</span> name[j];</td>\n      </tr>\n      <tr>\n        <td id=\"L10417\" class=\"blob-num js-line-number\" data-line-number=\"10417\"></td>\n        <td id=\"LC10417\" class=\"blob-code blob-code-inner js-file-line\">          lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">element</span>(item);</td>\n      </tr>\n      <tr>\n        <td id=\"L10418\" class=\"blob-num js-line-number\" data-line-number=\"10418\"></td>\n        <td id=\"LC10418\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10419\" class=\"blob-num js-line-number\" data-line-number=\"10419\"></td>\n        <td id=\"LC10419\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isFunction</span>(name)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10420\" class=\"blob-num js-line-number\" data-line-number=\"10420\"></td>\n        <td id=\"LC10420\" class=\"blob-code blob-code-inner js-file-line\">        lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">element</span>(<span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">apply</span>());</td>\n      </tr>\n      <tr>\n        <td id=\"L10421\" class=\"blob-num js-line-number\" data-line-number=\"10421\"></td>\n        <td id=\"LC10421\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isObject</span>(name)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10422\" class=\"blob-num js-line-number\" data-line-number=\"10422\"></td>\n        <td id=\"LC10422\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">for</span> (key <span class=\"pl-k\">in</span> name) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10423\" class=\"blob-num js-line-number\" data-line-number=\"10423\"></td>\n        <td id=\"LC10423\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(name, key)) <span class=\"pl-k\">continue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10424\" class=\"blob-num js-line-number\" data-line-number=\"10424\"></td>\n        <td id=\"LC10424\" class=\"blob-code blob-code-inner js-file-line\">          val <span class=\"pl-k\">=</span> name[key];</td>\n      </tr>\n      <tr>\n        <td id=\"L10425\" class=\"blob-num js-line-number\" data-line-number=\"10425\"></td>\n        <td id=\"LC10425\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isFunction</span>(val)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10426\" class=\"blob-num js-line-number\" data-line-number=\"10426\"></td>\n        <td id=\"LC10426\" class=\"blob-code blob-code-inner js-file-line\">            val <span class=\"pl-k\">=</span> <span class=\"pl-smi\">val</span>.<span class=\"pl-c1\">apply</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10427\" class=\"blob-num js-line-number\" data-line-number=\"10427\"></td>\n        <td id=\"LC10427\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L10428\" class=\"blob-num js-line-number\" data-line-number=\"10428\"></td>\n        <td id=\"LC10428\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> ((<span class=\"pl-en\">isObject</span>(val)) <span class=\"pl-k\">&amp;&amp;</span> (<span class=\"pl-en\">isEmpty</span>(val))) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10429\" class=\"blob-num js-line-number\" data-line-number=\"10429\"></td>\n        <td id=\"LC10429\" class=\"blob-code blob-code-inner js-file-line\">            val <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10430\" class=\"blob-num js-line-number\" data-line-number=\"10430\"></td>\n        <td id=\"LC10430\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L10431\" class=\"blob-num js-line-number\" data-line-number=\"10431\"></td>\n        <td id=\"LC10431\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-c1\">options</span>.<span class=\"pl-smi\">ignoreDecorators</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertAttKey</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertAttKey</span>) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10432\" class=\"blob-num js-line-number\" data-line-number=\"10432\"></td>\n        <td id=\"LC10432\" class=\"blob-code blob-code-inner js-file-line\">            lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">attribute</span>(<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertAttKey</span>.<span class=\"pl-c1\">length</span>), val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10433\" class=\"blob-num js-line-number\" data-line-number=\"10433\"></td>\n        <td id=\"LC10433\" class=\"blob-code blob-code-inner js-file-line\">          } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-c1\">options</span>.<span class=\"pl-smi\">ignoreDecorators</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertPIKey</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertPIKey</span>) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10434\" class=\"blob-num js-line-number\" data-line-number=\"10434\"></td>\n        <td id=\"LC10434\" class=\"blob-code blob-code-inner js-file-line\">            lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">instruction</span>(<span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">substr</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertPIKey</span>.<span class=\"pl-c1\">length</span>), val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10435\" class=\"blob-num js-line-number\" data-line-number=\"10435\"></td>\n        <td id=\"LC10435\" class=\"blob-code blob-code-inner js-file-line\">          } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isObject</span>(val)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10436\" class=\"blob-num js-line-number\" data-line-number=\"10436\"></td>\n        <td id=\"LC10436\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-c1\">options</span>.<span class=\"pl-smi\">ignoreDecorators</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertListKey</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">key</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertListKey</span>) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isArray</span>(val)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10437\" class=\"blob-num js-line-number\" data-line-number=\"10437\"></td>\n        <td id=\"LC10437\" class=\"blob-code blob-code-inner js-file-line\">              lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">element</span>(val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10438\" class=\"blob-num js-line-number\" data-line-number=\"10438\"></td>\n        <td id=\"LC10438\" class=\"blob-code blob-code-inner js-file-line\">            } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L10439\" class=\"blob-num js-line-number\" data-line-number=\"10439\"></td>\n        <td id=\"LC10439\" class=\"blob-code blob-code-inner js-file-line\">              lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">element</span>(key);</td>\n      </tr>\n      <tr>\n        <td id=\"L10440\" class=\"blob-num js-line-number\" data-line-number=\"10440\"></td>\n        <td id=\"LC10440\" class=\"blob-code blob-code-inner js-file-line\">              <span class=\"pl-smi\">lastChild</span>.<span class=\"pl-en\">element</span>(val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10441\" class=\"blob-num js-line-number\" data-line-number=\"10441\"></td>\n        <td id=\"LC10441\" class=\"blob-code blob-code-inner js-file-line\">            }</td>\n      </tr>\n      <tr>\n        <td id=\"L10442\" class=\"blob-num js-line-number\" data-line-number=\"10442\"></td>\n        <td id=\"LC10442\" class=\"blob-code blob-code-inner js-file-line\">          } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L10443\" class=\"blob-num js-line-number\" data-line-number=\"10443\"></td>\n        <td id=\"LC10443\" class=\"blob-code blob-code-inner js-file-line\">            lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">element</span>(key, val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10444\" class=\"blob-num js-line-number\" data-line-number=\"10444\"></td>\n        <td id=\"LC10444\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L10445\" class=\"blob-num js-line-number\" data-line-number=\"10445\"></td>\n        <td id=\"LC10445\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10446\" class=\"blob-num js-line-number\" data-line-number=\"10446\"></td>\n        <td id=\"LC10446\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L10447\" class=\"blob-num js-line-number\" data-line-number=\"10447\"></td>\n        <td id=\"LC10447\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-c1\">options</span>.<span class=\"pl-smi\">ignoreDecorators</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertTextKey</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertTextKey</span>) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10448\" class=\"blob-num js-line-number\" data-line-number=\"10448\"></td>\n        <td id=\"LC10448\" class=\"blob-code blob-code-inner js-file-line\">          lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">text</span>(text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10449\" class=\"blob-num js-line-number\" data-line-number=\"10449\"></td>\n        <td id=\"LC10449\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-c1\">options</span>.<span class=\"pl-smi\">ignoreDecorators</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertCDataKey</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertCDataKey</span>) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10450\" class=\"blob-num js-line-number\" data-line-number=\"10450\"></td>\n        <td id=\"LC10450\" class=\"blob-code blob-code-inner js-file-line\">          lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">cdata</span>(text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10451\" class=\"blob-num js-line-number\" data-line-number=\"10451\"></td>\n        <td id=\"LC10451\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-c1\">options</span>.<span class=\"pl-smi\">ignoreDecorators</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertCommentKey</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertCommentKey</span>) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10452\" class=\"blob-num js-line-number\" data-line-number=\"10452\"></td>\n        <td id=\"LC10452\" class=\"blob-code blob-code-inner js-file-line\">          lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">comment</span>(text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10453\" class=\"blob-num js-line-number\" data-line-number=\"10453\"></td>\n        <td id=\"LC10453\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-v\">this</span>.<span class=\"pl-c1\">options</span>.<span class=\"pl-smi\">ignoreDecorators</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertRawKey</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-smi\">convertRawKey</span>) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10454\" class=\"blob-num js-line-number\" data-line-number=\"10454\"></td>\n        <td id=\"LC10454\" class=\"blob-code blob-code-inner js-file-line\">          lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">raw</span>(text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10455\" class=\"blob-num js-line-number\" data-line-number=\"10455\"></td>\n        <td id=\"LC10455\" class=\"blob-code blob-code-inner js-file-line\">        } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L10456\" class=\"blob-num js-line-number\" data-line-number=\"10456\"></td>\n        <td id=\"LC10456\" class=\"blob-code blob-code-inner js-file-line\">          lastChild <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">node</span>(name, attributes, text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10457\" class=\"blob-num js-line-number\" data-line-number=\"10457\"></td>\n        <td id=\"LC10457\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L10458\" class=\"blob-num js-line-number\" data-line-number=\"10458\"></td>\n        <td id=\"LC10458\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10459\" class=\"blob-num js-line-number\" data-line-number=\"10459\"></td>\n        <td id=\"LC10459\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (lastChild <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10460\" class=\"blob-num js-line-number\" data-line-number=\"10460\"></td>\n        <td id=\"LC10460\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Could not create any elements with: <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> name);</td>\n      </tr>\n      <tr>\n        <td id=\"L10461\" class=\"blob-num js-line-number\" data-line-number=\"10461\"></td>\n        <td id=\"LC10461\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10462\" class=\"blob-num js-line-number\" data-line-number=\"10462\"></td>\n        <td id=\"LC10462\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> lastChild;</td>\n      </tr>\n      <tr>\n        <td id=\"L10463\" class=\"blob-num js-line-number\" data-line-number=\"10463\"></td>\n        <td id=\"LC10463\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10464\" class=\"blob-num js-line-number\" data-line-number=\"10464\"></td>\n        <td id=\"LC10464\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10465\" class=\"blob-num js-line-number\" data-line-number=\"10465\"></td>\n        <td id=\"LC10465\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">insertBefore</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">attributes</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10466\" class=\"blob-num js-line-number\" data-line-number=\"10466\"></td>\n        <td id=\"LC10466\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child, i, removed;</td>\n      </tr>\n      <tr>\n        <td id=\"L10467\" class=\"blob-num js-line-number\" data-line-number=\"10467\"></td>\n        <td id=\"LC10467\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">isRoot</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10468\" class=\"blob-num js-line-number\" data-line-number=\"10468\"></td>\n        <td id=\"LC10468\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Cannot insert elements at root level<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10469\" class=\"blob-num js-line-number\" data-line-number=\"10469\"></td>\n        <td id=\"LC10469\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10470\" class=\"blob-num js-line-number\" data-line-number=\"10470\"></td>\n        <td id=\"LC10470\" class=\"blob-code blob-code-inner js-file-line\">      i <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10471\" class=\"blob-num js-line-number\" data-line-number=\"10471\"></td>\n        <td id=\"LC10471\" class=\"blob-code blob-code-inner js-file-line\">      removed <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">splice</span>(i);</td>\n      </tr>\n      <tr>\n        <td id=\"L10472\" class=\"blob-num js-line-number\" data-line-number=\"10472\"></td>\n        <td id=\"LC10472\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-en\">element</span>(name, attributes, text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10473\" class=\"blob-num js-line-number\" data-line-number=\"10473\"></td>\n        <td id=\"LC10473\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">Array</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">push</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>, removed);</td>\n      </tr>\n      <tr>\n        <td id=\"L10474\" class=\"blob-num js-line-number\" data-line-number=\"10474\"></td>\n        <td id=\"LC10474\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10475\" class=\"blob-num js-line-number\" data-line-number=\"10475\"></td>\n        <td id=\"LC10475\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10476\" class=\"blob-num js-line-number\" data-line-number=\"10476\"></td>\n        <td id=\"LC10476\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10477\" class=\"blob-num js-line-number\" data-line-number=\"10477\"></td>\n        <td id=\"LC10477\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">insertAfter</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">attributes</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10478\" class=\"blob-num js-line-number\" data-line-number=\"10478\"></td>\n        <td id=\"LC10478\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child, i, removed;</td>\n      </tr>\n      <tr>\n        <td id=\"L10479\" class=\"blob-num js-line-number\" data-line-number=\"10479\"></td>\n        <td id=\"LC10479\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">isRoot</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10480\" class=\"blob-num js-line-number\" data-line-number=\"10480\"></td>\n        <td id=\"LC10480\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Cannot insert elements at root level<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10481\" class=\"blob-num js-line-number\" data-line-number=\"10481\"></td>\n        <td id=\"LC10481\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10482\" class=\"blob-num js-line-number\" data-line-number=\"10482\"></td>\n        <td id=\"LC10482\" class=\"blob-code blob-code-inner js-file-line\">      i <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10483\" class=\"blob-num js-line-number\" data-line-number=\"10483\"></td>\n        <td id=\"LC10483\" class=\"blob-code blob-code-inner js-file-line\">      removed <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">splice</span>(i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10484\" class=\"blob-num js-line-number\" data-line-number=\"10484\"></td>\n        <td id=\"LC10484\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-en\">element</span>(name, attributes, text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10485\" class=\"blob-num js-line-number\" data-line-number=\"10485\"></td>\n        <td id=\"LC10485\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">Array</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">push</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>, removed);</td>\n      </tr>\n      <tr>\n        <td id=\"L10486\" class=\"blob-num js-line-number\" data-line-number=\"10486\"></td>\n        <td id=\"LC10486\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10487\" class=\"blob-num js-line-number\" data-line-number=\"10487\"></td>\n        <td id=\"LC10487\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10488\" class=\"blob-num js-line-number\" data-line-number=\"10488\"></td>\n        <td id=\"LC10488\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10489\" class=\"blob-num js-line-number\" data-line-number=\"10489\"></td>\n        <td id=\"LC10489\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">remove</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10490\" class=\"blob-num js-line-number\" data-line-number=\"10490\"></td>\n        <td id=\"LC10490\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> i, ref;</td>\n      </tr>\n      <tr>\n        <td id=\"L10491\" class=\"blob-num js-line-number\" data-line-number=\"10491\"></td>\n        <td id=\"LC10491\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">isRoot</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10492\" class=\"blob-num js-line-number\" data-line-number=\"10492\"></td>\n        <td id=\"LC10492\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Cannot remove the root element<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10493\" class=\"blob-num js-line-number\" data-line-number=\"10493\"></td>\n        <td id=\"LC10493\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10494\" class=\"blob-num js-line-number\" data-line-number=\"10494\"></td>\n        <td id=\"LC10494\" class=\"blob-code blob-code-inner js-file-line\">      i <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10495\" class=\"blob-num js-line-number\" data-line-number=\"10495\"></td>\n        <td id=\"LC10495\" class=\"blob-code blob-code-inner js-file-line\">      [].<span class=\"pl-smi\">splice</span>.<span class=\"pl-c1\">apply</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>, [i, i <span class=\"pl-k\">-</span> i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>].<span class=\"pl-c1\">concat</span>(ref <span class=\"pl-k\">=</span> [])), ref;</td>\n      </tr>\n      <tr>\n        <td id=\"L10496\" class=\"blob-num js-line-number\" data-line-number=\"10496\"></td>\n        <td id=\"LC10496\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10497\" class=\"blob-num js-line-number\" data-line-number=\"10497\"></td>\n        <td id=\"LC10497\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10498\" class=\"blob-num js-line-number\" data-line-number=\"10498\"></td>\n        <td id=\"LC10498\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10499\" class=\"blob-num js-line-number\" data-line-number=\"10499\"></td>\n        <td id=\"LC10499\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">node</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">attributes</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10500\" class=\"blob-num js-line-number\" data-line-number=\"10500\"></td>\n        <td id=\"LC10500\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child, ref;</td>\n      </tr>\n      <tr>\n        <td id=\"L10501\" class=\"blob-num js-line-number\" data-line-number=\"10501\"></td>\n        <td id=\"LC10501\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (name <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10502\" class=\"blob-num js-line-number\" data-line-number=\"10502\"></td>\n        <td id=\"LC10502\" class=\"blob-code blob-code-inner js-file-line\">        name <span class=\"pl-k\">=</span> <span class=\"pl-smi\">name</span>.<span class=\"pl-c1\">valueOf</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10503\" class=\"blob-num js-line-number\" data-line-number=\"10503\"></td>\n        <td id=\"LC10503\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10504\" class=\"blob-num js-line-number\" data-line-number=\"10504\"></td>\n        <td id=\"LC10504\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (attributes <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10505\" class=\"blob-num js-line-number\" data-line-number=\"10505\"></td>\n        <td id=\"LC10505\" class=\"blob-code blob-code-inner js-file-line\">        attributes <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L10506\" class=\"blob-num js-line-number\" data-line-number=\"10506\"></td>\n        <td id=\"LC10506\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10507\" class=\"blob-num js-line-number\" data-line-number=\"10507\"></td>\n        <td id=\"LC10507\" class=\"blob-code blob-code-inner js-file-line\">      attributes <span class=\"pl-k\">=</span> <span class=\"pl-smi\">attributes</span>.<span class=\"pl-c1\">valueOf</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10508\" class=\"blob-num js-line-number\" data-line-number=\"10508\"></td>\n        <td id=\"LC10508\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isObject</span>(attributes)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10509\" class=\"blob-num js-line-number\" data-line-number=\"10509\"></td>\n        <td id=\"LC10509\" class=\"blob-code blob-code-inner js-file-line\">        ref <span class=\"pl-k\">=</span> [attributes, text], text <span class=\"pl-k\">=</span> ref[<span class=\"pl-c1\">0</span>], attributes <span class=\"pl-k\">=</span> ref[<span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L10510\" class=\"blob-num js-line-number\" data-line-number=\"10510\"></td>\n        <td id=\"LC10510\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10511\" class=\"blob-num js-line-number\" data-line-number=\"10511\"></td>\n        <td id=\"LC10511\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLElement</span>(<span class=\"pl-v\">this</span>, name, attributes);</td>\n      </tr>\n      <tr>\n        <td id=\"L10512\" class=\"blob-num js-line-number\" data-line-number=\"10512\"></td>\n        <td id=\"LC10512\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (text <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10513\" class=\"blob-num js-line-number\" data-line-number=\"10513\"></td>\n        <td id=\"LC10513\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">text</span>(text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10514\" class=\"blob-num js-line-number\" data-line-number=\"10514\"></td>\n        <td id=\"LC10514\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10515\" class=\"blob-num js-line-number\" data-line-number=\"10515\"></td>\n        <td id=\"LC10515\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10516\" class=\"blob-num js-line-number\" data-line-number=\"10516\"></td>\n        <td id=\"LC10516\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10517\" class=\"blob-num js-line-number\" data-line-number=\"10517\"></td>\n        <td id=\"LC10517\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10518\" class=\"blob-num js-line-number\" data-line-number=\"10518\"></td>\n        <td id=\"LC10518\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10519\" class=\"blob-num js-line-number\" data-line-number=\"10519\"></td>\n        <td id=\"LC10519\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">text</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10520\" class=\"blob-num js-line-number\" data-line-number=\"10520\"></td>\n        <td id=\"LC10520\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10521\" class=\"blob-num js-line-number\" data-line-number=\"10521\"></td>\n        <td id=\"LC10521\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLText</span>(<span class=\"pl-v\">this</span>, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10522\" class=\"blob-num js-line-number\" data-line-number=\"10522\"></td>\n        <td id=\"LC10522\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10523\" class=\"blob-num js-line-number\" data-line-number=\"10523\"></td>\n        <td id=\"LC10523\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10524\" class=\"blob-num js-line-number\" data-line-number=\"10524\"></td>\n        <td id=\"LC10524\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10525\" class=\"blob-num js-line-number\" data-line-number=\"10525\"></td>\n        <td id=\"LC10525\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10526\" class=\"blob-num js-line-number\" data-line-number=\"10526\"></td>\n        <td id=\"LC10526\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">cdata</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10527\" class=\"blob-num js-line-number\" data-line-number=\"10527\"></td>\n        <td id=\"LC10527\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10528\" class=\"blob-num js-line-number\" data-line-number=\"10528\"></td>\n        <td id=\"LC10528\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLCData</span>(<span class=\"pl-v\">this</span>, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10529\" class=\"blob-num js-line-number\" data-line-number=\"10529\"></td>\n        <td id=\"LC10529\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10530\" class=\"blob-num js-line-number\" data-line-number=\"10530\"></td>\n        <td id=\"LC10530\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10531\" class=\"blob-num js-line-number\" data-line-number=\"10531\"></td>\n        <td id=\"LC10531\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10532\" class=\"blob-num js-line-number\" data-line-number=\"10532\"></td>\n        <td id=\"LC10532\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10533\" class=\"blob-num js-line-number\" data-line-number=\"10533\"></td>\n        <td id=\"LC10533\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">comment</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10534\" class=\"blob-num js-line-number\" data-line-number=\"10534\"></td>\n        <td id=\"LC10534\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10535\" class=\"blob-num js-line-number\" data-line-number=\"10535\"></td>\n        <td id=\"LC10535\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLComment</span>(<span class=\"pl-v\">this</span>, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10536\" class=\"blob-num js-line-number\" data-line-number=\"10536\"></td>\n        <td id=\"LC10536\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10537\" class=\"blob-num js-line-number\" data-line-number=\"10537\"></td>\n        <td id=\"LC10537\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10538\" class=\"blob-num js-line-number\" data-line-number=\"10538\"></td>\n        <td id=\"LC10538\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10539\" class=\"blob-num js-line-number\" data-line-number=\"10539\"></td>\n        <td id=\"LC10539\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10540\" class=\"blob-num js-line-number\" data-line-number=\"10540\"></td>\n        <td id=\"LC10540\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">raw</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10541\" class=\"blob-num js-line-number\" data-line-number=\"10541\"></td>\n        <td id=\"LC10541\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10542\" class=\"blob-num js-line-number\" data-line-number=\"10542\"></td>\n        <td id=\"LC10542\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLRaw</span>(<span class=\"pl-v\">this</span>, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10543\" class=\"blob-num js-line-number\" data-line-number=\"10543\"></td>\n        <td id=\"LC10543\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(child);</td>\n      </tr>\n      <tr>\n        <td id=\"L10544\" class=\"blob-num js-line-number\" data-line-number=\"10544\"></td>\n        <td id=\"LC10544\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10545\" class=\"blob-num js-line-number\" data-line-number=\"10545\"></td>\n        <td id=\"LC10545\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10546\" class=\"blob-num js-line-number\" data-line-number=\"10546\"></td>\n        <td id=\"LC10546\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10547\" class=\"blob-num js-line-number\" data-line-number=\"10547\"></td>\n        <td id=\"LC10547\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">declaration</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">version</span>, <span class=\"pl-smi\">encoding</span>, <span class=\"pl-smi\">standalone</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10548\" class=\"blob-num js-line-number\" data-line-number=\"10548\"></td>\n        <td id=\"LC10548\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> doc, xmldec;</td>\n      </tr>\n      <tr>\n        <td id=\"L10549\" class=\"blob-num js-line-number\" data-line-number=\"10549\"></td>\n        <td id=\"LC10549\" class=\"blob-code blob-code-inner js-file-line\">      doc <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">document</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10550\" class=\"blob-num js-line-number\" data-line-number=\"10550\"></td>\n        <td id=\"LC10550\" class=\"blob-code blob-code-inner js-file-line\">      xmldec <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLDeclaration</span>(doc, version, encoding, standalone);</td>\n      </tr>\n      <tr>\n        <td id=\"L10551\" class=\"blob-num js-line-number\" data-line-number=\"10551\"></td>\n        <td id=\"LC10551\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">doc</span>.<span class=\"pl-smi\">xmldec</span> <span class=\"pl-k\">=</span> xmldec;</td>\n      </tr>\n      <tr>\n        <td id=\"L10552\" class=\"blob-num js-line-number\" data-line-number=\"10552\"></td>\n        <td id=\"LC10552\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">doc</span>.<span class=\"pl-en\">root</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10553\" class=\"blob-num js-line-number\" data-line-number=\"10553\"></td>\n        <td id=\"LC10553\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10554\" class=\"blob-num js-line-number\" data-line-number=\"10554\"></td>\n        <td id=\"LC10554\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10555\" class=\"blob-num js-line-number\" data-line-number=\"10555\"></td>\n        <td id=\"LC10555\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">doctype</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">pubID</span>, <span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10556\" class=\"blob-num js-line-number\" data-line-number=\"10556\"></td>\n        <td id=\"LC10556\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> doc, doctype;</td>\n      </tr>\n      <tr>\n        <td id=\"L10557\" class=\"blob-num js-line-number\" data-line-number=\"10557\"></td>\n        <td id=\"LC10557\" class=\"blob-code blob-code-inner js-file-line\">      doc <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">document</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10558\" class=\"blob-num js-line-number\" data-line-number=\"10558\"></td>\n        <td id=\"LC10558\" class=\"blob-code blob-code-inner js-file-line\">      doctype <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLDocType</span>(doc, pubID, sysID);</td>\n      </tr>\n      <tr>\n        <td id=\"L10559\" class=\"blob-num js-line-number\" data-line-number=\"10559\"></td>\n        <td id=\"LC10559\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">doc</span>.<span class=\"pl-c1\">doctype</span> <span class=\"pl-k\">=</span> doctype;</td>\n      </tr>\n      <tr>\n        <td id=\"L10560\" class=\"blob-num js-line-number\" data-line-number=\"10560\"></td>\n        <td id=\"LC10560\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> doctype;</td>\n      </tr>\n      <tr>\n        <td id=\"L10561\" class=\"blob-num js-line-number\" data-line-number=\"10561\"></td>\n        <td id=\"LC10561\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10562\" class=\"blob-num js-line-number\" data-line-number=\"10562\"></td>\n        <td id=\"LC10562\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10563\" class=\"blob-num js-line-number\" data-line-number=\"10563\"></td>\n        <td id=\"LC10563\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">up</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10564\" class=\"blob-num js-line-number\" data-line-number=\"10564\"></td>\n        <td id=\"LC10564\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">isRoot</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10565\" class=\"blob-num js-line-number\" data-line-number=\"10565\"></td>\n        <td id=\"LC10565\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>The root node has no parent. Use doc() if you need to get the document object.<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10566\" class=\"blob-num js-line-number\" data-line-number=\"10566\"></td>\n        <td id=\"LC10566\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10567\" class=\"blob-num js-line-number\" data-line-number=\"10567\"></td>\n        <td id=\"LC10567\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10568\" class=\"blob-num js-line-number\" data-line-number=\"10568\"></td>\n        <td id=\"LC10568\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10569\" class=\"blob-num js-line-number\" data-line-number=\"10569\"></td>\n        <td id=\"LC10569\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10570\" class=\"blob-num js-line-number\" data-line-number=\"10570\"></td>\n        <td id=\"LC10570\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">root</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10571\" class=\"blob-num js-line-number\" data-line-number=\"10571\"></td>\n        <td id=\"LC10571\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10572\" class=\"blob-num js-line-number\" data-line-number=\"10572\"></td>\n        <td id=\"LC10572\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">isRoot</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10573\" class=\"blob-num js-line-number\" data-line-number=\"10573\"></td>\n        <td id=\"LC10573\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10574\" class=\"blob-num js-line-number\" data-line-number=\"10574\"></td>\n        <td id=\"LC10574\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10575\" class=\"blob-num js-line-number\" data-line-number=\"10575\"></td>\n        <td id=\"LC10575\" class=\"blob-code blob-code-inner js-file-line\">      child <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10576\" class=\"blob-num js-line-number\" data-line-number=\"10576\"></td>\n        <td id=\"LC10576\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">while</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">child</span>.<span class=\"pl-smi\">isRoot</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10577\" class=\"blob-num js-line-number\" data-line-number=\"10577\"></td>\n        <td id=\"LC10577\" class=\"blob-code blob-code-inner js-file-line\">        child <span class=\"pl-k\">=</span> <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">parent</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10578\" class=\"blob-num js-line-number\" data-line-number=\"10578\"></td>\n        <td id=\"LC10578\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10579\" class=\"blob-num js-line-number\" data-line-number=\"10579\"></td>\n        <td id=\"LC10579\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> child;</td>\n      </tr>\n      <tr>\n        <td id=\"L10580\" class=\"blob-num js-line-number\" data-line-number=\"10580\"></td>\n        <td id=\"LC10580\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10581\" class=\"blob-num js-line-number\" data-line-number=\"10581\"></td>\n        <td id=\"LC10581\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10582\" class=\"blob-num js-line-number\" data-line-number=\"10582\"></td>\n        <td id=\"LC10582\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">document</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10583\" class=\"blob-num js-line-number\" data-line-number=\"10583\"></td>\n        <td id=\"LC10583\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">root</span>().<span class=\"pl-smi\">documentObject</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10584\" class=\"blob-num js-line-number\" data-line-number=\"10584\"></td>\n        <td id=\"LC10584\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10585\" class=\"blob-num js-line-number\" data-line-number=\"10585\"></td>\n        <td id=\"LC10585\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10586\" class=\"blob-num js-line-number\" data-line-number=\"10586\"></td>\n        <td id=\"LC10586\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">end</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10587\" class=\"blob-num js-line-number\" data-line-number=\"10587\"></td>\n        <td id=\"LC10587\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">document</span>().<span class=\"pl-c1\">toString</span>(options);</td>\n      </tr>\n      <tr>\n        <td id=\"L10588\" class=\"blob-num js-line-number\" data-line-number=\"10588\"></td>\n        <td id=\"LC10588\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10589\" class=\"blob-num js-line-number\" data-line-number=\"10589\"></td>\n        <td id=\"LC10589\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10590\" class=\"blob-num js-line-number\" data-line-number=\"10590\"></td>\n        <td id=\"LC10590\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">prev</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10591\" class=\"blob-num js-line-number\" data-line-number=\"10591\"></td>\n        <td id=\"LC10591\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> i;</td>\n      </tr>\n      <tr>\n        <td id=\"L10592\" class=\"blob-num js-line-number\" data-line-number=\"10592\"></td>\n        <td id=\"LC10592\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">isRoot</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10593\" class=\"blob-num js-line-number\" data-line-number=\"10593\"></td>\n        <td id=\"LC10593\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Root node has no siblings<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10594\" class=\"blob-num js-line-number\" data-line-number=\"10594\"></td>\n        <td id=\"LC10594\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10595\" class=\"blob-num js-line-number\" data-line-number=\"10595\"></td>\n        <td id=\"LC10595\" class=\"blob-code blob-code-inner js-file-line\">      i <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10596\" class=\"blob-num js-line-number\" data-line-number=\"10596\"></td>\n        <td id=\"LC10596\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (i <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10597\" class=\"blob-num js-line-number\" data-line-number=\"10597\"></td>\n        <td id=\"LC10597\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Already at the first node<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10598\" class=\"blob-num js-line-number\" data-line-number=\"10598\"></td>\n        <td id=\"LC10598\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10599\" class=\"blob-num js-line-number\" data-line-number=\"10599\"></td>\n        <td id=\"LC10599\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>[i <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L10600\" class=\"blob-num js-line-number\" data-line-number=\"10600\"></td>\n        <td id=\"LC10600\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10601\" class=\"blob-num js-line-number\" data-line-number=\"10601\"></td>\n        <td id=\"LC10601\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10602\" class=\"blob-num js-line-number\" data-line-number=\"10602\"></td>\n        <td id=\"LC10602\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">next</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10603\" class=\"blob-num js-line-number\" data-line-number=\"10603\"></td>\n        <td id=\"LC10603\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> i;</td>\n      </tr>\n      <tr>\n        <td id=\"L10604\" class=\"blob-num js-line-number\" data-line-number=\"10604\"></td>\n        <td id=\"LC10604\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">isRoot</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10605\" class=\"blob-num js-line-number\" data-line-number=\"10605\"></td>\n        <td id=\"LC10605\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Root node has no siblings<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10606\" class=\"blob-num js-line-number\" data-line-number=\"10606\"></td>\n        <td id=\"LC10606\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10607\" class=\"blob-num js-line-number\" data-line-number=\"10607\"></td>\n        <td id=\"LC10607\" class=\"blob-code blob-code-inner js-file-line\">      i <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">indexOf</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10608\" class=\"blob-num js-line-number\" data-line-number=\"10608\"></td>\n        <td id=\"LC10608\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (i <span class=\"pl-k\">===</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">||</span> i <span class=\"pl-k\">===</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10609\" class=\"blob-num js-line-number\" data-line-number=\"10609\"></td>\n        <td id=\"LC10609\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Already at the last node<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10610\" class=\"blob-num js-line-number\" data-line-number=\"10610\"></td>\n        <td id=\"LC10610\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10611\" class=\"blob-num js-line-number\" data-line-number=\"10611\"></td>\n        <td id=\"LC10611\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">parent</span>.<span class=\"pl-smi\">children</span>[i <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L10612\" class=\"blob-num js-line-number\" data-line-number=\"10612\"></td>\n        <td id=\"LC10612\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10613\" class=\"blob-num js-line-number\" data-line-number=\"10613\"></td>\n        <td id=\"LC10613\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10614\" class=\"blob-num js-line-number\" data-line-number=\"10614\"></td>\n        <td id=\"LC10614\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">importXMLBuilder</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">xmlbuilder</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10615\" class=\"blob-num js-line-number\" data-line-number=\"10615\"></td>\n        <td id=\"LC10615\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> clonedRoot;</td>\n      </tr>\n      <tr>\n        <td id=\"L10616\" class=\"blob-num js-line-number\" data-line-number=\"10616\"></td>\n        <td id=\"LC10616\" class=\"blob-code blob-code-inner js-file-line\">      clonedRoot <span class=\"pl-k\">=</span> <span class=\"pl-smi\">xmlbuilder</span>.<span class=\"pl-en\">root</span>().<span class=\"pl-en\">clone</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10617\" class=\"blob-num js-line-number\" data-line-number=\"10617\"></td>\n        <td id=\"LC10617\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">clonedRoot</span>.<span class=\"pl-c1\">parent</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10618\" class=\"blob-num js-line-number\" data-line-number=\"10618\"></td>\n        <td id=\"LC10618\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">clonedRoot</span>.<span class=\"pl-smi\">isRoot</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10619\" class=\"blob-num js-line-number\" data-line-number=\"10619\"></td>\n        <td id=\"LC10619\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">children</span>.<span class=\"pl-c1\">push</span>(clonedRoot);</td>\n      </tr>\n      <tr>\n        <td id=\"L10620\" class=\"blob-num js-line-number\" data-line-number=\"10620\"></td>\n        <td id=\"LC10620\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10621\" class=\"blob-num js-line-number\" data-line-number=\"10621\"></td>\n        <td id=\"LC10621\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10622\" class=\"blob-num js-line-number\" data-line-number=\"10622\"></td>\n        <td id=\"LC10622\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10623\" class=\"blob-num js-line-number\" data-line-number=\"10623\"></td>\n        <td id=\"LC10623\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">ele</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">attributes</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10624\" class=\"blob-num js-line-number\" data-line-number=\"10624\"></td>\n        <td id=\"LC10624\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">element</span>(name, attributes, text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10625\" class=\"blob-num js-line-number\" data-line-number=\"10625\"></td>\n        <td id=\"LC10625\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10626\" class=\"blob-num js-line-number\" data-line-number=\"10626\"></td>\n        <td id=\"LC10626\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10627\" class=\"blob-num js-line-number\" data-line-number=\"10627\"></td>\n        <td id=\"LC10627\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">nod</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">attributes</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10628\" class=\"blob-num js-line-number\" data-line-number=\"10628\"></td>\n        <td id=\"LC10628\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">node</span>(name, attributes, text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10629\" class=\"blob-num js-line-number\" data-line-number=\"10629\"></td>\n        <td id=\"LC10629\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10630\" class=\"blob-num js-line-number\" data-line-number=\"10630\"></td>\n        <td id=\"LC10630\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10631\" class=\"blob-num js-line-number\" data-line-number=\"10631\"></td>\n        <td id=\"LC10631\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">txt</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10632\" class=\"blob-num js-line-number\" data-line-number=\"10632\"></td>\n        <td id=\"LC10632\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">text</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10633\" class=\"blob-num js-line-number\" data-line-number=\"10633\"></td>\n        <td id=\"LC10633\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10634\" class=\"blob-num js-line-number\" data-line-number=\"10634\"></td>\n        <td id=\"LC10634\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10635\" class=\"blob-num js-line-number\" data-line-number=\"10635\"></td>\n        <td id=\"LC10635\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">dat</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10636\" class=\"blob-num js-line-number\" data-line-number=\"10636\"></td>\n        <td id=\"LC10636\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">cdata</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10637\" class=\"blob-num js-line-number\" data-line-number=\"10637\"></td>\n        <td id=\"LC10637\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10638\" class=\"blob-num js-line-number\" data-line-number=\"10638\"></td>\n        <td id=\"LC10638\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10639\" class=\"blob-num js-line-number\" data-line-number=\"10639\"></td>\n        <td id=\"LC10639\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">com</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10640\" class=\"blob-num js-line-number\" data-line-number=\"10640\"></td>\n        <td id=\"LC10640\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">comment</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10641\" class=\"blob-num js-line-number\" data-line-number=\"10641\"></td>\n        <td id=\"LC10641\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10642\" class=\"blob-num js-line-number\" data-line-number=\"10642\"></td>\n        <td id=\"LC10642\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10643\" class=\"blob-num js-line-number\" data-line-number=\"10643\"></td>\n        <td id=\"LC10643\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">doc</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10644\" class=\"blob-num js-line-number\" data-line-number=\"10644\"></td>\n        <td id=\"LC10644\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">document</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10645\" class=\"blob-num js-line-number\" data-line-number=\"10645\"></td>\n        <td id=\"LC10645\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10646\" class=\"blob-num js-line-number\" data-line-number=\"10646\"></td>\n        <td id=\"LC10646\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10647\" class=\"blob-num js-line-number\" data-line-number=\"10647\"></td>\n        <td id=\"LC10647\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">dec</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">version</span>, <span class=\"pl-smi\">encoding</span>, <span class=\"pl-smi\">standalone</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10648\" class=\"blob-num js-line-number\" data-line-number=\"10648\"></td>\n        <td id=\"LC10648\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">declaration</span>(version, encoding, standalone);</td>\n      </tr>\n      <tr>\n        <td id=\"L10649\" class=\"blob-num js-line-number\" data-line-number=\"10649\"></td>\n        <td id=\"LC10649\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10650\" class=\"blob-num js-line-number\" data-line-number=\"10650\"></td>\n        <td id=\"LC10650\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10651\" class=\"blob-num js-line-number\" data-line-number=\"10651\"></td>\n        <td id=\"LC10651\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">dtd</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">pubID</span>, <span class=\"pl-smi\">sysID</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10652\" class=\"blob-num js-line-number\" data-line-number=\"10652\"></td>\n        <td id=\"LC10652\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">doctype</span>(pubID, sysID);</td>\n      </tr>\n      <tr>\n        <td id=\"L10653\" class=\"blob-num js-line-number\" data-line-number=\"10653\"></td>\n        <td id=\"LC10653\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10654\" class=\"blob-num js-line-number\" data-line-number=\"10654\"></td>\n        <td id=\"LC10654\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10655\" class=\"blob-num js-line-number\" data-line-number=\"10655\"></td>\n        <td id=\"LC10655\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">e</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">attributes</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10656\" class=\"blob-num js-line-number\" data-line-number=\"10656\"></td>\n        <td id=\"LC10656\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">element</span>(name, attributes, text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10657\" class=\"blob-num js-line-number\" data-line-number=\"10657\"></td>\n        <td id=\"LC10657\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10658\" class=\"blob-num js-line-number\" data-line-number=\"10658\"></td>\n        <td id=\"LC10658\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10659\" class=\"blob-num js-line-number\" data-line-number=\"10659\"></td>\n        <td id=\"LC10659\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">n</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">attributes</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10660\" class=\"blob-num js-line-number\" data-line-number=\"10660\"></td>\n        <td id=\"LC10660\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">node</span>(name, attributes, text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10661\" class=\"blob-num js-line-number\" data-line-number=\"10661\"></td>\n        <td id=\"LC10661\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10662\" class=\"blob-num js-line-number\" data-line-number=\"10662\"></td>\n        <td id=\"LC10662\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10663\" class=\"blob-num js-line-number\" data-line-number=\"10663\"></td>\n        <td id=\"LC10663\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">t</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10664\" class=\"blob-num js-line-number\" data-line-number=\"10664\"></td>\n        <td id=\"LC10664\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">text</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10665\" class=\"blob-num js-line-number\" data-line-number=\"10665\"></td>\n        <td id=\"LC10665\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10666\" class=\"blob-num js-line-number\" data-line-number=\"10666\"></td>\n        <td id=\"LC10666\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10667\" class=\"blob-num js-line-number\" data-line-number=\"10667\"></td>\n        <td id=\"LC10667\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">d</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10668\" class=\"blob-num js-line-number\" data-line-number=\"10668\"></td>\n        <td id=\"LC10668\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">cdata</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10669\" class=\"blob-num js-line-number\" data-line-number=\"10669\"></td>\n        <td id=\"LC10669\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10670\" class=\"blob-num js-line-number\" data-line-number=\"10670\"></td>\n        <td id=\"LC10670\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10671\" class=\"blob-num js-line-number\" data-line-number=\"10671\"></td>\n        <td id=\"LC10671\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">c</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10672\" class=\"blob-num js-line-number\" data-line-number=\"10672\"></td>\n        <td id=\"LC10672\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">comment</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10673\" class=\"blob-num js-line-number\" data-line-number=\"10673\"></td>\n        <td id=\"LC10673\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10674\" class=\"blob-num js-line-number\" data-line-number=\"10674\"></td>\n        <td id=\"LC10674\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10675\" class=\"blob-num js-line-number\" data-line-number=\"10675\"></td>\n        <td id=\"LC10675\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">r</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10676\" class=\"blob-num js-line-number\" data-line-number=\"10676\"></td>\n        <td id=\"LC10676\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">raw</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10677\" class=\"blob-num js-line-number\" data-line-number=\"10677\"></td>\n        <td id=\"LC10677\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10678\" class=\"blob-num js-line-number\" data-line-number=\"10678\"></td>\n        <td id=\"LC10678\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10679\" class=\"blob-num js-line-number\" data-line-number=\"10679\"></td>\n        <td id=\"LC10679\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLNode</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">u</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10680\" class=\"blob-num js-line-number\" data-line-number=\"10680\"></td>\n        <td id=\"LC10680\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">up</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L10681\" class=\"blob-num js-line-number\" data-line-number=\"10681\"></td>\n        <td id=\"LC10681\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10682\" class=\"blob-num js-line-number\" data-line-number=\"10682\"></td>\n        <td id=\"LC10682\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10683\" class=\"blob-num js-line-number\" data-line-number=\"10683\"></td>\n        <td id=\"LC10683\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLNode;</td>\n      </tr>\n      <tr>\n        <td id=\"L10684\" class=\"blob-num js-line-number\" data-line-number=\"10684\"></td>\n        <td id=\"LC10684\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10685\" class=\"blob-num js-line-number\" data-line-number=\"10685\"></td>\n        <td id=\"LC10685\" class=\"blob-code blob-code-inner js-file-line\">  })();</td>\n      </tr>\n      <tr>\n        <td id=\"L10686\" class=\"blob-num js-line-number\" data-line-number=\"10686\"></td>\n        <td id=\"LC10686\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10687\" class=\"blob-num js-line-number\" data-line-number=\"10687\"></td>\n        <td id=\"LC10687\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10688\" class=\"blob-num js-line-number\" data-line-number=\"10688\"></td>\n        <td id=\"LC10688\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10689\" class=\"blob-num js-line-number\" data-line-number=\"10689\"></td>\n        <td id=\"LC10689\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLCData<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">68</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLComment<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">69</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLDeclaration<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">74</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLDocType<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">75</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLElement<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">76</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLRaw<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">79</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLText<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">81</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/lang/isArray<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">117</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/lang/isEmpty<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">118</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/lang/isFunction<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">119</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/lang/isObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">121</span>}],<span class=\"pl-c1\">78</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L10690\" class=\"blob-num js-line-number\" data-line-number=\"10690\"></td>\n        <td id=\"LC10690\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10691\" class=\"blob-num js-line-number\" data-line-number=\"10691\"></td>\n        <td id=\"LC10691\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLProcessingInstruction, create;</td>\n      </tr>\n      <tr>\n        <td id=\"L10692\" class=\"blob-num js-line-number\" data-line-number=\"10692\"></td>\n        <td id=\"LC10692\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10693\" class=\"blob-num js-line-number\" data-line-number=\"10693\"></td>\n        <td id=\"LC10693\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10694\" class=\"blob-num js-line-number\" data-line-number=\"10694\"></td>\n        <td id=\"LC10694\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10695\" class=\"blob-num js-line-number\" data-line-number=\"10695\"></td>\n        <td id=\"LC10695\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLProcessingInstruction <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10696\" class=\"blob-num js-line-number\" data-line-number=\"10696\"></td>\n        <td id=\"LC10696\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLProcessingInstruction</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">target</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10697\" class=\"blob-num js-line-number\" data-line-number=\"10697\"></td>\n        <td id=\"LC10697\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-smi\">stringify</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10698\" class=\"blob-num js-line-number\" data-line-number=\"10698\"></td>\n        <td id=\"LC10698\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (target <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10699\" class=\"blob-num js-line-number\" data-line-number=\"10699\"></td>\n        <td id=\"LC10699\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing instruction target<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10700\" class=\"blob-num js-line-number\" data-line-number=\"10700\"></td>\n        <td id=\"LC10700\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10701\" class=\"blob-num js-line-number\" data-line-number=\"10701\"></td>\n        <td id=\"LC10701\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">target</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">insTarget</span>(target);</td>\n      </tr>\n      <tr>\n        <td id=\"L10702\" class=\"blob-num js-line-number\" data-line-number=\"10702\"></td>\n        <td id=\"LC10702\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (value) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10703\" class=\"blob-num js-line-number\" data-line-number=\"10703\"></td>\n        <td id=\"LC10703\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">insValue</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L10704\" class=\"blob-num js-line-number\" data-line-number=\"10704\"></td>\n        <td id=\"LC10704\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10705\" class=\"blob-num js-line-number\" data-line-number=\"10705\"></td>\n        <td id=\"LC10705\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L10706\" class=\"blob-num js-line-number\" data-line-number=\"10706\"></td>\n        <td id=\"LC10706\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10707\" class=\"blob-num js-line-number\" data-line-number=\"10707\"></td>\n        <td id=\"LC10707\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLProcessingInstruction</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10708\" class=\"blob-num js-line-number\" data-line-number=\"10708\"></td>\n        <td id=\"LC10708\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLProcessingInstruction</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10709\" class=\"blob-num js-line-number\" data-line-number=\"10709\"></td>\n        <td id=\"LC10709\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10710\" class=\"blob-num js-line-number\" data-line-number=\"10710\"></td>\n        <td id=\"LC10710\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10711\" class=\"blob-num js-line-number\" data-line-number=\"10711\"></td>\n        <td id=\"LC10711\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLProcessingInstruction</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10712\" class=\"blob-num js-line-number\" data-line-number=\"10712\"></td>\n        <td id=\"LC10712\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> indent, newline, offset, pretty, r, ref, ref1, ref2, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L10713\" class=\"blob-num js-line-number\" data-line-number=\"10713\"></td>\n        <td id=\"LC10713\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10714\" class=\"blob-num js-line-number\" data-line-number=\"10714\"></td>\n        <td id=\"LC10714\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10715\" class=\"blob-num js-line-number\" data-line-number=\"10715\"></td>\n        <td id=\"LC10715\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10716\" class=\"blob-num js-line-number\" data-line-number=\"10716\"></td>\n        <td id=\"LC10716\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10717\" class=\"blob-num js-line-number\" data-line-number=\"10717\"></td>\n        <td id=\"LC10717\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10718\" class=\"blob-num js-line-number\" data-line-number=\"10718\"></td>\n        <td id=\"LC10718\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L10719\" class=\"blob-num js-line-number\" data-line-number=\"10719\"></td>\n        <td id=\"LC10719\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10720\" class=\"blob-num js-line-number\" data-line-number=\"10720\"></td>\n        <td id=\"LC10720\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10721\" class=\"blob-num js-line-number\" data-line-number=\"10721\"></td>\n        <td id=\"LC10721\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L10722\" class=\"blob-num js-line-number\" data-line-number=\"10722\"></td>\n        <td id=\"LC10722\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10723\" class=\"blob-num js-line-number\" data-line-number=\"10723\"></td>\n        <td id=\"LC10723\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&lt;?<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10724\" class=\"blob-num js-line-number\" data-line-number=\"10724\"></td>\n        <td id=\"LC10724\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">target</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10725\" class=\"blob-num js-line-number\" data-line-number=\"10725\"></td>\n        <td id=\"LC10725\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10726\" class=\"blob-num js-line-number\" data-line-number=\"10726\"></td>\n        <td id=\"LC10726\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span> <span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10727\" class=\"blob-num js-line-number\" data-line-number=\"10727\"></td>\n        <td id=\"LC10727\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10728\" class=\"blob-num js-line-number\" data-line-number=\"10728\"></td>\n        <td id=\"LC10728\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?&gt;<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10729\" class=\"blob-num js-line-number\" data-line-number=\"10729\"></td>\n        <td id=\"LC10729\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10730\" class=\"blob-num js-line-number\" data-line-number=\"10730\"></td>\n        <td id=\"LC10730\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L10731\" class=\"blob-num js-line-number\" data-line-number=\"10731\"></td>\n        <td id=\"LC10731\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10732\" class=\"blob-num js-line-number\" data-line-number=\"10732\"></td>\n        <td id=\"LC10732\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L10733\" class=\"blob-num js-line-number\" data-line-number=\"10733\"></td>\n        <td id=\"LC10733\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10734\" class=\"blob-num js-line-number\" data-line-number=\"10734\"></td>\n        <td id=\"LC10734\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10735\" class=\"blob-num js-line-number\" data-line-number=\"10735\"></td>\n        <td id=\"LC10735\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLProcessingInstruction;</td>\n      </tr>\n      <tr>\n        <td id=\"L10736\" class=\"blob-num js-line-number\" data-line-number=\"10736\"></td>\n        <td id=\"LC10736\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10737\" class=\"blob-num js-line-number\" data-line-number=\"10737\"></td>\n        <td id=\"LC10737\" class=\"blob-code blob-code-inner js-file-line\">  })();</td>\n      </tr>\n      <tr>\n        <td id=\"L10738\" class=\"blob-num js-line-number\" data-line-number=\"10738\"></td>\n        <td id=\"LC10738\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10739\" class=\"blob-num js-line-number\" data-line-number=\"10739\"></td>\n        <td id=\"LC10739\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10740\" class=\"blob-num js-line-number\" data-line-number=\"10740\"></td>\n        <td id=\"LC10740\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10741\" class=\"blob-num js-line-number\" data-line-number=\"10741\"></td>\n        <td id=\"LC10741\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">79</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L10742\" class=\"blob-num js-line-number\" data-line-number=\"10742\"></td>\n        <td id=\"LC10742\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10743\" class=\"blob-num js-line-number\" data-line-number=\"10743\"></td>\n        <td id=\"LC10743\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLNode, XMLRaw, create,</td>\n      </tr>\n      <tr>\n        <td id=\"L10744\" class=\"blob-num js-line-number\" data-line-number=\"10744\"></td>\n        <td id=\"LC10744\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">child</span>, <span class=\"pl-smi\">parent</span>) { <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> key <span class=\"pl-k\">in</span> parent) { <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(parent, key)) child[key] <span class=\"pl-k\">=</span> parent[key]; } <span class=\"pl-k\">function</span> <span class=\"pl-en\">ctor</span>() { <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span> <span class=\"pl-k\">=</span> child; } <span class=\"pl-smi\">ctor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">ctor</span>(); <span class=\"pl-smi\">child</span>.<span class=\"pl-smi\">__super__</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-k\">return</span> child; },</td>\n      </tr>\n      <tr>\n        <td id=\"L10745\" class=\"blob-num js-line-number\" data-line-number=\"10745\"></td>\n        <td id=\"LC10745\" class=\"blob-code blob-code-inner js-file-line\">    hasProp <span class=\"pl-k\">=</span> {}.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10746\" class=\"blob-num js-line-number\" data-line-number=\"10746\"></td>\n        <td id=\"LC10746\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10747\" class=\"blob-num js-line-number\" data-line-number=\"10747\"></td>\n        <td id=\"LC10747\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10748\" class=\"blob-num js-line-number\" data-line-number=\"10748\"></td>\n        <td id=\"LC10748\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10749\" class=\"blob-num js-line-number\" data-line-number=\"10749\"></td>\n        <td id=\"LC10749\" class=\"blob-code blob-code-inner js-file-line\">  XMLNode <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLNode<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10750\" class=\"blob-num js-line-number\" data-line-number=\"10750\"></td>\n        <td id=\"LC10750\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10751\" class=\"blob-num js-line-number\" data-line-number=\"10751\"></td>\n        <td id=\"LC10751\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLRaw <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">superClass</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10752\" class=\"blob-num js-line-number\" data-line-number=\"10752\"></td>\n        <td id=\"LC10752\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span>(XMLRaw, superClass);</td>\n      </tr>\n      <tr>\n        <td id=\"L10753\" class=\"blob-num js-line-number\" data-line-number=\"10753\"></td>\n        <td id=\"LC10753\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10754\" class=\"blob-num js-line-number\" data-line-number=\"10754\"></td>\n        <td id=\"LC10754\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLRaw</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10755\" class=\"blob-num js-line-number\" data-line-number=\"10755\"></td>\n        <td id=\"LC10755\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">XMLRaw</span>.<span class=\"pl-smi\">__super__</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, parent);</td>\n      </tr>\n      <tr>\n        <td id=\"L10756\" class=\"blob-num js-line-number\" data-line-number=\"10756\"></td>\n        <td id=\"LC10756\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (text <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10757\" class=\"blob-num js-line-number\" data-line-number=\"10757\"></td>\n        <td id=\"LC10757\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing raw text<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10758\" class=\"blob-num js-line-number\" data-line-number=\"10758\"></td>\n        <td id=\"LC10758\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10759\" class=\"blob-num js-line-number\" data-line-number=\"10759\"></td>\n        <td id=\"LC10759\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">raw</span>(text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10760\" class=\"blob-num js-line-number\" data-line-number=\"10760\"></td>\n        <td id=\"LC10760\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L10761\" class=\"blob-num js-line-number\" data-line-number=\"10761\"></td>\n        <td id=\"LC10761\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10762\" class=\"blob-num js-line-number\" data-line-number=\"10762\"></td>\n        <td id=\"LC10762\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLRaw</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10763\" class=\"blob-num js-line-number\" data-line-number=\"10763\"></td>\n        <td id=\"LC10763\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLRaw</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10764\" class=\"blob-num js-line-number\" data-line-number=\"10764\"></td>\n        <td id=\"LC10764\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10765\" class=\"blob-num js-line-number\" data-line-number=\"10765\"></td>\n        <td id=\"LC10765\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10766\" class=\"blob-num js-line-number\" data-line-number=\"10766\"></td>\n        <td id=\"LC10766\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLRaw</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10767\" class=\"blob-num js-line-number\" data-line-number=\"10767\"></td>\n        <td id=\"LC10767\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> indent, newline, offset, pretty, r, ref, ref1, ref2, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L10768\" class=\"blob-num js-line-number\" data-line-number=\"10768\"></td>\n        <td id=\"LC10768\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10769\" class=\"blob-num js-line-number\" data-line-number=\"10769\"></td>\n        <td id=\"LC10769\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10770\" class=\"blob-num js-line-number\" data-line-number=\"10770\"></td>\n        <td id=\"LC10770\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10771\" class=\"blob-num js-line-number\" data-line-number=\"10771\"></td>\n        <td id=\"LC10771\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10772\" class=\"blob-num js-line-number\" data-line-number=\"10772\"></td>\n        <td id=\"LC10772\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10773\" class=\"blob-num js-line-number\" data-line-number=\"10773\"></td>\n        <td id=\"LC10773\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L10774\" class=\"blob-num js-line-number\" data-line-number=\"10774\"></td>\n        <td id=\"LC10774\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10775\" class=\"blob-num js-line-number\" data-line-number=\"10775\"></td>\n        <td id=\"LC10775\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10776\" class=\"blob-num js-line-number\" data-line-number=\"10776\"></td>\n        <td id=\"LC10776\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L10777\" class=\"blob-num js-line-number\" data-line-number=\"10777\"></td>\n        <td id=\"LC10777\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10778\" class=\"blob-num js-line-number\" data-line-number=\"10778\"></td>\n        <td id=\"LC10778\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10779\" class=\"blob-num js-line-number\" data-line-number=\"10779\"></td>\n        <td id=\"LC10779\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10780\" class=\"blob-num js-line-number\" data-line-number=\"10780\"></td>\n        <td id=\"LC10780\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L10781\" class=\"blob-num js-line-number\" data-line-number=\"10781\"></td>\n        <td id=\"LC10781\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10782\" class=\"blob-num js-line-number\" data-line-number=\"10782\"></td>\n        <td id=\"LC10782\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L10783\" class=\"blob-num js-line-number\" data-line-number=\"10783\"></td>\n        <td id=\"LC10783\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10784\" class=\"blob-num js-line-number\" data-line-number=\"10784\"></td>\n        <td id=\"LC10784\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10785\" class=\"blob-num js-line-number\" data-line-number=\"10785\"></td>\n        <td id=\"LC10785\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLRaw;</td>\n      </tr>\n      <tr>\n        <td id=\"L10786\" class=\"blob-num js-line-number\" data-line-number=\"10786\"></td>\n        <td id=\"LC10786\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10787\" class=\"blob-num js-line-number\" data-line-number=\"10787\"></td>\n        <td id=\"LC10787\" class=\"blob-code blob-code-inner js-file-line\">  })(XMLNode);</td>\n      </tr>\n      <tr>\n        <td id=\"L10788\" class=\"blob-num js-line-number\" data-line-number=\"10788\"></td>\n        <td id=\"LC10788\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10789\" class=\"blob-num js-line-number\" data-line-number=\"10789\"></td>\n        <td id=\"LC10789\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10790\" class=\"blob-num js-line-number\" data-line-number=\"10790\"></td>\n        <td id=\"LC10790\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10791\" class=\"blob-num js-line-number\" data-line-number=\"10791\"></td>\n        <td id=\"LC10791\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLNode<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">77</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">80</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L10792\" class=\"blob-num js-line-number\" data-line-number=\"10792\"></td>\n        <td id=\"LC10792\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10793\" class=\"blob-num js-line-number\" data-line-number=\"10793\"></td>\n        <td id=\"LC10793\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLStringifier,</td>\n      </tr>\n      <tr>\n        <td id=\"L10794\" class=\"blob-num js-line-number\" data-line-number=\"10794\"></td>\n        <td id=\"LC10794\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">bind</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">fn</span>, <span class=\"pl-smi\">me</span>){ <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>(){ <span class=\"pl-k\">return</span> <span class=\"pl-smi\">fn</span>.<span class=\"pl-c1\">apply</span>(me, <span class=\"pl-v\">arguments</span>); }; },</td>\n      </tr>\n      <tr>\n        <td id=\"L10795\" class=\"blob-num js-line-number\" data-line-number=\"10795\"></td>\n        <td id=\"LC10795\" class=\"blob-code blob-code-inner js-file-line\">    hasProp <span class=\"pl-k\">=</span> {}.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10796\" class=\"blob-num js-line-number\" data-line-number=\"10796\"></td>\n        <td id=\"LC10796\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10797\" class=\"blob-num js-line-number\" data-line-number=\"10797\"></td>\n        <td id=\"LC10797\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLStringifier <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10798\" class=\"blob-num js-line-number\" data-line-number=\"10798\"></td>\n        <td id=\"LC10798\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLStringifier</span>(<span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10799\" class=\"blob-num js-line-number\" data-line-number=\"10799\"></td>\n        <td id=\"LC10799\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">assertLegalChar</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">bind</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">assertLegalChar</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10800\" class=\"blob-num js-line-number\" data-line-number=\"10800\"></td>\n        <td id=\"LC10800\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> key, ref, value;</td>\n      </tr>\n      <tr>\n        <td id=\"L10801\" class=\"blob-num js-line-number\" data-line-number=\"10801\"></td>\n        <td id=\"LC10801\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">allowSurrogateChars</span> <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">allowSurrogateChars</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10802\" class=\"blob-num js-line-number\" data-line-number=\"10802\"></td>\n        <td id=\"LC10802\" class=\"blob-code blob-code-inner js-file-line\">      ref <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">stringify</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L10803\" class=\"blob-num js-line-number\" data-line-number=\"10803\"></td>\n        <td id=\"LC10803\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">for</span> (key <span class=\"pl-k\">in</span> ref) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10804\" class=\"blob-num js-line-number\" data-line-number=\"10804\"></td>\n        <td id=\"LC10804\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(ref, key)) <span class=\"pl-k\">continue</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10805\" class=\"blob-num js-line-number\" data-line-number=\"10805\"></td>\n        <td id=\"LC10805\" class=\"blob-code blob-code-inner js-file-line\">        value <span class=\"pl-k\">=</span> ref[key];</td>\n      </tr>\n      <tr>\n        <td id=\"L10806\" class=\"blob-num js-line-number\" data-line-number=\"10806\"></td>\n        <td id=\"LC10806\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-v\">this</span>[key] <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L10807\" class=\"blob-num js-line-number\" data-line-number=\"10807\"></td>\n        <td id=\"LC10807\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10808\" class=\"blob-num js-line-number\" data-line-number=\"10808\"></td>\n        <td id=\"LC10808\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L10809\" class=\"blob-num js-line-number\" data-line-number=\"10809\"></td>\n        <td id=\"LC10809\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10810\" class=\"blob-num js-line-number\" data-line-number=\"10810\"></td>\n        <td id=\"LC10810\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">eleName</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10811\" class=\"blob-num js-line-number\" data-line-number=\"10811\"></td>\n        <td id=\"LC10811\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10812\" class=\"blob-num js-line-number\" data-line-number=\"10812\"></td>\n        <td id=\"LC10812\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">assertLegalChar</span>(val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10813\" class=\"blob-num js-line-number\" data-line-number=\"10813\"></td>\n        <td id=\"LC10813\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10814\" class=\"blob-num js-line-number\" data-line-number=\"10814\"></td>\n        <td id=\"LC10814\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10815\" class=\"blob-num js-line-number\" data-line-number=\"10815\"></td>\n        <td id=\"LC10815\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">eleText</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10816\" class=\"blob-num js-line-number\" data-line-number=\"10816\"></td>\n        <td id=\"LC10816\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10817\" class=\"blob-num js-line-number\" data-line-number=\"10817\"></td>\n        <td id=\"LC10817\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">assertLegalChar</span>(<span class=\"pl-v\">this</span>.<span class=\"pl-en\">elEscape</span>(val));</td>\n      </tr>\n      <tr>\n        <td id=\"L10818\" class=\"blob-num js-line-number\" data-line-number=\"10818\"></td>\n        <td id=\"LC10818\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10819\" class=\"blob-num js-line-number\" data-line-number=\"10819\"></td>\n        <td id=\"LC10819\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10820\" class=\"blob-num js-line-number\" data-line-number=\"10820\"></td>\n        <td id=\"LC10820\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">cdata</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10821\" class=\"blob-num js-line-number\" data-line-number=\"10821\"></td>\n        <td id=\"LC10821\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10822\" class=\"blob-num js-line-number\" data-line-number=\"10822\"></td>\n        <td id=\"LC10822\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">val</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>]]&gt;<span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10823\" class=\"blob-num js-line-number\" data-line-number=\"10823\"></td>\n        <td id=\"LC10823\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Invalid CDATA text: <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10824\" class=\"blob-num js-line-number\" data-line-number=\"10824\"></td>\n        <td id=\"LC10824\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10825\" class=\"blob-num js-line-number\" data-line-number=\"10825\"></td>\n        <td id=\"LC10825\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">assertLegalChar</span>(val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10826\" class=\"blob-num js-line-number\" data-line-number=\"10826\"></td>\n        <td id=\"LC10826\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10827\" class=\"blob-num js-line-number\" data-line-number=\"10827\"></td>\n        <td id=\"LC10827\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10828\" class=\"blob-num js-line-number\" data-line-number=\"10828\"></td>\n        <td id=\"LC10828\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">comment</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10829\" class=\"blob-num js-line-number\" data-line-number=\"10829\"></td>\n        <td id=\"LC10829\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10830\" class=\"blob-num js-line-number\" data-line-number=\"10830\"></td>\n        <td id=\"LC10830\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">val</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>--<span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10831\" class=\"blob-num js-line-number\" data-line-number=\"10831\"></td>\n        <td id=\"LC10831\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Comment text cannot contain double-hypen: <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10832\" class=\"blob-num js-line-number\" data-line-number=\"10832\"></td>\n        <td id=\"LC10832\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10833\" class=\"blob-num js-line-number\" data-line-number=\"10833\"></td>\n        <td id=\"LC10833\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">assertLegalChar</span>(val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10834\" class=\"blob-num js-line-number\" data-line-number=\"10834\"></td>\n        <td id=\"LC10834\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10835\" class=\"blob-num js-line-number\" data-line-number=\"10835\"></td>\n        <td id=\"LC10835\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10836\" class=\"blob-num js-line-number\" data-line-number=\"10836\"></td>\n        <td id=\"LC10836\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">raw</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10837\" class=\"blob-num js-line-number\" data-line-number=\"10837\"></td>\n        <td id=\"LC10837\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10838\" class=\"blob-num js-line-number\" data-line-number=\"10838\"></td>\n        <td id=\"LC10838\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10839\" class=\"blob-num js-line-number\" data-line-number=\"10839\"></td>\n        <td id=\"LC10839\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10840\" class=\"blob-num js-line-number\" data-line-number=\"10840\"></td>\n        <td id=\"LC10840\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">attName</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10841\" class=\"blob-num js-line-number\" data-line-number=\"10841\"></td>\n        <td id=\"LC10841\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10842\" class=\"blob-num js-line-number\" data-line-number=\"10842\"></td>\n        <td id=\"LC10842\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10843\" class=\"blob-num js-line-number\" data-line-number=\"10843\"></td>\n        <td id=\"LC10843\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10844\" class=\"blob-num js-line-number\" data-line-number=\"10844\"></td>\n        <td id=\"LC10844\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">attValue</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10845\" class=\"blob-num js-line-number\" data-line-number=\"10845\"></td>\n        <td id=\"LC10845\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10846\" class=\"blob-num js-line-number\" data-line-number=\"10846\"></td>\n        <td id=\"LC10846\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>.<span class=\"pl-en\">attEscape</span>(val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10847\" class=\"blob-num js-line-number\" data-line-number=\"10847\"></td>\n        <td id=\"LC10847\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10848\" class=\"blob-num js-line-number\" data-line-number=\"10848\"></td>\n        <td id=\"LC10848\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10849\" class=\"blob-num js-line-number\" data-line-number=\"10849\"></td>\n        <td id=\"LC10849\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">insTarget</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10850\" class=\"blob-num js-line-number\" data-line-number=\"10850\"></td>\n        <td id=\"LC10850\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10851\" class=\"blob-num js-line-number\" data-line-number=\"10851\"></td>\n        <td id=\"LC10851\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10852\" class=\"blob-num js-line-number\" data-line-number=\"10852\"></td>\n        <td id=\"LC10852\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10853\" class=\"blob-num js-line-number\" data-line-number=\"10853\"></td>\n        <td id=\"LC10853\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">insValue</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10854\" class=\"blob-num js-line-number\" data-line-number=\"10854\"></td>\n        <td id=\"LC10854\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10855\" class=\"blob-num js-line-number\" data-line-number=\"10855\"></td>\n        <td id=\"LC10855\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">val</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\?</span>&gt;<span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10856\" class=\"blob-num js-line-number\" data-line-number=\"10856\"></td>\n        <td id=\"LC10856\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Invalid processing instruction value: <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10857\" class=\"blob-num js-line-number\" data-line-number=\"10857\"></td>\n        <td id=\"LC10857\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10858\" class=\"blob-num js-line-number\" data-line-number=\"10858\"></td>\n        <td id=\"LC10858\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> val;</td>\n      </tr>\n      <tr>\n        <td id=\"L10859\" class=\"blob-num js-line-number\" data-line-number=\"10859\"></td>\n        <td id=\"LC10859\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10860\" class=\"blob-num js-line-number\" data-line-number=\"10860\"></td>\n        <td id=\"LC10860\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10861\" class=\"blob-num js-line-number\" data-line-number=\"10861\"></td>\n        <td id=\"LC10861\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">xmlVersion</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10862\" class=\"blob-num js-line-number\" data-line-number=\"10862\"></td>\n        <td id=\"LC10862\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10863\" class=\"blob-num js-line-number\" data-line-number=\"10863\"></td>\n        <td id=\"LC10863\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">val</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>1<span class=\"pl-cce\">\\.</span><span class=\"pl-c1\">[<span class=\"pl-c1\">0-9</span>]</span><span class=\"pl-k\">+</span><span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10864\" class=\"blob-num js-line-number\" data-line-number=\"10864\"></td>\n        <td id=\"LC10864\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Invalid version number: <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10865\" class=\"blob-num js-line-number\" data-line-number=\"10865\"></td>\n        <td id=\"LC10865\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10866\" class=\"blob-num js-line-number\" data-line-number=\"10866\"></td>\n        <td id=\"LC10866\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> val;</td>\n      </tr>\n      <tr>\n        <td id=\"L10867\" class=\"blob-num js-line-number\" data-line-number=\"10867\"></td>\n        <td id=\"LC10867\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10868\" class=\"blob-num js-line-number\" data-line-number=\"10868\"></td>\n        <td id=\"LC10868\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10869\" class=\"blob-num js-line-number\" data-line-number=\"10869\"></td>\n        <td id=\"LC10869\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">xmlEncoding</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10870\" class=\"blob-num js-line-number\" data-line-number=\"10870\"></td>\n        <td id=\"LC10870\" class=\"blob-code blob-code-inner js-file-line\">      val <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10871\" class=\"blob-num js-line-number\" data-line-number=\"10871\"></td>\n        <td id=\"LC10871\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">val</span>.<span class=\"pl-c1\">match</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-c1\">[<span class=\"pl-c1\">A-Za-z</span>]</span>(?:<span class=\"pl-c1\">[<span class=\"pl-c1\">A-Za-z0-9</span><span class=\"pl-c1\">.</span>_-]</span><span class=\"pl-k\">|</span>-)<span class=\"pl-k\">*</span><span class=\"pl-pds\">/</span></span>)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10872\" class=\"blob-num js-line-number\" data-line-number=\"10872\"></td>\n        <td id=\"LC10872\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Invalid encoding: <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> val);</td>\n      </tr>\n      <tr>\n        <td id=\"L10873\" class=\"blob-num js-line-number\" data-line-number=\"10873\"></td>\n        <td id=\"LC10873\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10874\" class=\"blob-num js-line-number\" data-line-number=\"10874\"></td>\n        <td id=\"LC10874\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> val;</td>\n      </tr>\n      <tr>\n        <td id=\"L10875\" class=\"blob-num js-line-number\" data-line-number=\"10875\"></td>\n        <td id=\"LC10875\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10876\" class=\"blob-num js-line-number\" data-line-number=\"10876\"></td>\n        <td id=\"LC10876\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10877\" class=\"blob-num js-line-number\" data-line-number=\"10877\"></td>\n        <td id=\"LC10877\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">xmlStandalone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10878\" class=\"blob-num js-line-number\" data-line-number=\"10878\"></td>\n        <td id=\"LC10878\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (val) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10879\" class=\"blob-num js-line-number\" data-line-number=\"10879\"></td>\n        <td id=\"LC10879\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>yes<span class=\"pl-pds\">&quot;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10880\" class=\"blob-num js-line-number\" data-line-number=\"10880\"></td>\n        <td id=\"LC10880\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L10881\" class=\"blob-num js-line-number\" data-line-number=\"10881\"></td>\n        <td id=\"LC10881\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>no<span class=\"pl-pds\">&quot;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10882\" class=\"blob-num js-line-number\" data-line-number=\"10882\"></td>\n        <td id=\"LC10882\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10883\" class=\"blob-num js-line-number\" data-line-number=\"10883\"></td>\n        <td id=\"LC10883\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10884\" class=\"blob-num js-line-number\" data-line-number=\"10884\"></td>\n        <td id=\"LC10884\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10885\" class=\"blob-num js-line-number\" data-line-number=\"10885\"></td>\n        <td id=\"LC10885\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">dtdPubID</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10886\" class=\"blob-num js-line-number\" data-line-number=\"10886\"></td>\n        <td id=\"LC10886\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10887\" class=\"blob-num js-line-number\" data-line-number=\"10887\"></td>\n        <td id=\"LC10887\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10888\" class=\"blob-num js-line-number\" data-line-number=\"10888\"></td>\n        <td id=\"LC10888\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10889\" class=\"blob-num js-line-number\" data-line-number=\"10889\"></td>\n        <td id=\"LC10889\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">dtdSysID</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10890\" class=\"blob-num js-line-number\" data-line-number=\"10890\"></td>\n        <td id=\"LC10890\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10891\" class=\"blob-num js-line-number\" data-line-number=\"10891\"></td>\n        <td id=\"LC10891\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10892\" class=\"blob-num js-line-number\" data-line-number=\"10892\"></td>\n        <td id=\"LC10892\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10893\" class=\"blob-num js-line-number\" data-line-number=\"10893\"></td>\n        <td id=\"LC10893\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">dtdElementValue</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10894\" class=\"blob-num js-line-number\" data-line-number=\"10894\"></td>\n        <td id=\"LC10894\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10895\" class=\"blob-num js-line-number\" data-line-number=\"10895\"></td>\n        <td id=\"LC10895\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10896\" class=\"blob-num js-line-number\" data-line-number=\"10896\"></td>\n        <td id=\"LC10896\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10897\" class=\"blob-num js-line-number\" data-line-number=\"10897\"></td>\n        <td id=\"LC10897\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">dtdAttType</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10898\" class=\"blob-num js-line-number\" data-line-number=\"10898\"></td>\n        <td id=\"LC10898\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10899\" class=\"blob-num js-line-number\" data-line-number=\"10899\"></td>\n        <td id=\"LC10899\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10900\" class=\"blob-num js-line-number\" data-line-number=\"10900\"></td>\n        <td id=\"LC10900\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10901\" class=\"blob-num js-line-number\" data-line-number=\"10901\"></td>\n        <td id=\"LC10901\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">dtdAttDefault</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10902\" class=\"blob-num js-line-number\" data-line-number=\"10902\"></td>\n        <td id=\"LC10902\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (val <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10903\" class=\"blob-num js-line-number\" data-line-number=\"10903\"></td>\n        <td id=\"LC10903\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10904\" class=\"blob-num js-line-number\" data-line-number=\"10904\"></td>\n        <td id=\"LC10904\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L10905\" class=\"blob-num js-line-number\" data-line-number=\"10905\"></td>\n        <td id=\"LC10905\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> val;</td>\n      </tr>\n      <tr>\n        <td id=\"L10906\" class=\"blob-num js-line-number\" data-line-number=\"10906\"></td>\n        <td id=\"LC10906\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10907\" class=\"blob-num js-line-number\" data-line-number=\"10907\"></td>\n        <td id=\"LC10907\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10908\" class=\"blob-num js-line-number\" data-line-number=\"10908\"></td>\n        <td id=\"LC10908\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10909\" class=\"blob-num js-line-number\" data-line-number=\"10909\"></td>\n        <td id=\"LC10909\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">dtdEntityValue</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10910\" class=\"blob-num js-line-number\" data-line-number=\"10910\"></td>\n        <td id=\"LC10910\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10911\" class=\"blob-num js-line-number\" data-line-number=\"10911\"></td>\n        <td id=\"LC10911\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10912\" class=\"blob-num js-line-number\" data-line-number=\"10912\"></td>\n        <td id=\"LC10912\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10913\" class=\"blob-num js-line-number\" data-line-number=\"10913\"></td>\n        <td id=\"LC10913\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">dtdNData</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">val</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10914\" class=\"blob-num js-line-number\" data-line-number=\"10914\"></td>\n        <td id=\"LC10914\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span> val <span class=\"pl-k\">||</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10915\" class=\"blob-num js-line-number\" data-line-number=\"10915\"></td>\n        <td id=\"LC10915\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10916\" class=\"blob-num js-line-number\" data-line-number=\"10916\"></td>\n        <td id=\"LC10916\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10917\" class=\"blob-num js-line-number\" data-line-number=\"10917\"></td>\n        <td id=\"LC10917\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">convertAttKey</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>@<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10918\" class=\"blob-num js-line-number\" data-line-number=\"10918\"></td>\n        <td id=\"LC10918\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10919\" class=\"blob-num js-line-number\" data-line-number=\"10919\"></td>\n        <td id=\"LC10919\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">convertPIKey</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>?<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10920\" class=\"blob-num js-line-number\" data-line-number=\"10920\"></td>\n        <td id=\"LC10920\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10921\" class=\"blob-num js-line-number\" data-line-number=\"10921\"></td>\n        <td id=\"LC10921\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">convertTextKey</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#text<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10922\" class=\"blob-num js-line-number\" data-line-number=\"10922\"></td>\n        <td id=\"LC10922\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10923\" class=\"blob-num js-line-number\" data-line-number=\"10923\"></td>\n        <td id=\"LC10923\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">convertCDataKey</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#cdata<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10924\" class=\"blob-num js-line-number\" data-line-number=\"10924\"></td>\n        <td id=\"LC10924\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10925\" class=\"blob-num js-line-number\" data-line-number=\"10925\"></td>\n        <td id=\"LC10925\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">convertCommentKey</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#comment<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10926\" class=\"blob-num js-line-number\" data-line-number=\"10926\"></td>\n        <td id=\"LC10926\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10927\" class=\"blob-num js-line-number\" data-line-number=\"10927\"></td>\n        <td id=\"LC10927\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">convertRawKey</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#raw<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10928\" class=\"blob-num js-line-number\" data-line-number=\"10928\"></td>\n        <td id=\"LC10928\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10929\" class=\"blob-num js-line-number\" data-line-number=\"10929\"></td>\n        <td id=\"LC10929\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">convertListKey</span> <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>#list<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10930\" class=\"blob-num js-line-number\" data-line-number=\"10930\"></td>\n        <td id=\"LC10930\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10931\" class=\"blob-num js-line-number\" data-line-number=\"10931\"></td>\n        <td id=\"LC10931\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">assertLegalChar</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">str</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10932\" class=\"blob-num js-line-number\" data-line-number=\"10932\"></td>\n        <td id=\"LC10932\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> chars, chr;</td>\n      </tr>\n      <tr>\n        <td id=\"L10933\" class=\"blob-num js-line-number\" data-line-number=\"10933\"></td>\n        <td id=\"LC10933\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-v\">this</span>.<span class=\"pl-smi\">allowSurrogateChars</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10934\" class=\"blob-num js-line-number\" data-line-number=\"10934\"></td>\n        <td id=\"LC10934\" class=\"blob-code blob-code-inner js-file-line\">        chars <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-c1\">[<span class=\"pl-cce\">\\u</span>000<span class=\"pl-c1\">0-<span class=\"pl-cce\">\\u</span></span>0008<span class=\"pl-cce\">\\u</span>000<span class=\"pl-c1\">B-<span class=\"pl-cce\">\\u</span></span>000C<span class=\"pl-cce\">\\u</span>000<span class=\"pl-c1\">E-<span class=\"pl-cce\">\\u</span></span>001F<span class=\"pl-cce\">\\u</span>FFF<span class=\"pl-c1\">E-<span class=\"pl-cce\">\\u</span></span>FFFF]</span><span class=\"pl-pds\">/</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10935\" class=\"blob-num js-line-number\" data-line-number=\"10935\"></td>\n        <td id=\"LC10935\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L10936\" class=\"blob-num js-line-number\" data-line-number=\"10936\"></td>\n        <td id=\"LC10936\" class=\"blob-code blob-code-inner js-file-line\">        chars <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-c1\">[<span class=\"pl-cce\">\\u</span>000<span class=\"pl-c1\">0-<span class=\"pl-cce\">\\u</span></span>0008<span class=\"pl-cce\">\\u</span>000<span class=\"pl-c1\">B-<span class=\"pl-cce\">\\u</span></span>000C<span class=\"pl-cce\">\\u</span>000<span class=\"pl-c1\">E-<span class=\"pl-cce\">\\u</span></span>001F<span class=\"pl-cce\">\\u</span>D80<span class=\"pl-c1\">0-<span class=\"pl-cce\">\\u</span></span>DFFF<span class=\"pl-cce\">\\u</span>FFF<span class=\"pl-c1\">E-<span class=\"pl-cce\">\\u</span></span>FFFF]</span><span class=\"pl-pds\">/</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10937\" class=\"blob-num js-line-number\" data-line-number=\"10937\"></td>\n        <td id=\"LC10937\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10938\" class=\"blob-num js-line-number\" data-line-number=\"10938\"></td>\n        <td id=\"LC10938\" class=\"blob-code blob-code-inner js-file-line\">      chr <span class=\"pl-k\">=</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">match</span>(chars);</td>\n      </tr>\n      <tr>\n        <td id=\"L10939\" class=\"blob-num js-line-number\" data-line-number=\"10939\"></td>\n        <td id=\"LC10939\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (chr) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10940\" class=\"blob-num js-line-number\" data-line-number=\"10940\"></td>\n        <td id=\"LC10940\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Invalid character (<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> chr <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>) in string: <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> str <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span> at index <span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">+</span> <span class=\"pl-smi\">chr</span>.<span class=\"pl-c1\">index</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10941\" class=\"blob-num js-line-number\" data-line-number=\"10941\"></td>\n        <td id=\"LC10941\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10942\" class=\"blob-num js-line-number\" data-line-number=\"10942\"></td>\n        <td id=\"LC10942\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> str;</td>\n      </tr>\n      <tr>\n        <td id=\"L10943\" class=\"blob-num js-line-number\" data-line-number=\"10943\"></td>\n        <td id=\"LC10943\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10944\" class=\"blob-num js-line-number\" data-line-number=\"10944\"></td>\n        <td id=\"LC10944\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10945\" class=\"blob-num js-line-number\" data-line-number=\"10945\"></td>\n        <td id=\"LC10945\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">elEscape</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">str</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10946\" class=\"blob-num js-line-number\" data-line-number=\"10946\"></td>\n        <td id=\"LC10946\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>&amp;<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;amp;<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>&lt;<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;lt;<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>&gt;<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;gt;<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\r</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;#xD;<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10947\" class=\"blob-num js-line-number\" data-line-number=\"10947\"></td>\n        <td id=\"LC10947\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10948\" class=\"blob-num js-line-number\" data-line-number=\"10948\"></td>\n        <td id=\"LC10948\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10949\" class=\"blob-num js-line-number\" data-line-number=\"10949\"></td>\n        <td id=\"LC10949\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLStringifier</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">attEscape</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">str</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10950\" class=\"blob-num js-line-number\" data-line-number=\"10950\"></td>\n        <td id=\"LC10950\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">str</span>.<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>&amp;<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;amp;<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>&lt;<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;lt;<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>&quot;<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;quot;<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\t</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;#x9;<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;#xA;<span class=\"pl-pds\">&#39;</span></span>).<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span><span class=\"pl-cce\">\\r</span><span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>&amp;#xD;<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10951\" class=\"blob-num js-line-number\" data-line-number=\"10951\"></td>\n        <td id=\"LC10951\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10952\" class=\"blob-num js-line-number\" data-line-number=\"10952\"></td>\n        <td id=\"LC10952\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10953\" class=\"blob-num js-line-number\" data-line-number=\"10953\"></td>\n        <td id=\"LC10953\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLStringifier;</td>\n      </tr>\n      <tr>\n        <td id=\"L10954\" class=\"blob-num js-line-number\" data-line-number=\"10954\"></td>\n        <td id=\"LC10954\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10955\" class=\"blob-num js-line-number\" data-line-number=\"10955\"></td>\n        <td id=\"LC10955\" class=\"blob-code blob-code-inner js-file-line\">  })();</td>\n      </tr>\n      <tr>\n        <td id=\"L10956\" class=\"blob-num js-line-number\" data-line-number=\"10956\"></td>\n        <td id=\"LC10956\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10957\" class=\"blob-num js-line-number\" data-line-number=\"10957\"></td>\n        <td id=\"LC10957\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10958\" class=\"blob-num js-line-number\" data-line-number=\"10958\"></td>\n        <td id=\"LC10958\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10959\" class=\"blob-num js-line-number\" data-line-number=\"10959\"></td>\n        <td id=\"LC10959\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">81</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L10960\" class=\"blob-num js-line-number\" data-line-number=\"10960\"></td>\n        <td id=\"LC10960\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10961\" class=\"blob-num js-line-number\" data-line-number=\"10961\"></td>\n        <td id=\"LC10961\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLNode, XMLText, create,</td>\n      </tr>\n      <tr>\n        <td id=\"L10962\" class=\"blob-num js-line-number\" data-line-number=\"10962\"></td>\n        <td id=\"LC10962\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">child</span>, <span class=\"pl-smi\">parent</span>) { <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> key <span class=\"pl-k\">in</span> parent) { <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">hasProp</span>.<span class=\"pl-c1\">call</span>(parent, key)) child[key] <span class=\"pl-k\">=</span> parent[key]; } <span class=\"pl-k\">function</span> <span class=\"pl-en\">ctor</span>() { <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">constructor</span> <span class=\"pl-k\">=</span> child; } <span class=\"pl-smi\">ctor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-smi\">child</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">ctor</span>(); <span class=\"pl-smi\">child</span>.<span class=\"pl-smi\">__super__</span> <span class=\"pl-k\">=</span> <span class=\"pl-smi\">parent</span>.<span class=\"pl-c1\">prototype</span>; <span class=\"pl-k\">return</span> child; },</td>\n      </tr>\n      <tr>\n        <td id=\"L10963\" class=\"blob-num js-line-number\" data-line-number=\"10963\"></td>\n        <td id=\"LC10963\" class=\"blob-code blob-code-inner js-file-line\">    hasProp <span class=\"pl-k\">=</span> {}.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10964\" class=\"blob-num js-line-number\" data-line-number=\"10964\"></td>\n        <td id=\"LC10964\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10965\" class=\"blob-num js-line-number\" data-line-number=\"10965\"></td>\n        <td id=\"LC10965\" class=\"blob-code blob-code-inner js-file-line\">  create <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/create<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10966\" class=\"blob-num js-line-number\" data-line-number=\"10966\"></td>\n        <td id=\"LC10966\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10967\" class=\"blob-num js-line-number\" data-line-number=\"10967\"></td>\n        <td id=\"LC10967\" class=\"blob-code blob-code-inner js-file-line\">  XMLNode <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLNode<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10968\" class=\"blob-num js-line-number\" data-line-number=\"10968\"></td>\n        <td id=\"LC10968\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10969\" class=\"blob-num js-line-number\" data-line-number=\"10969\"></td>\n        <td id=\"LC10969\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> XMLText <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">superClass</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10970\" class=\"blob-num js-line-number\" data-line-number=\"10970\"></td>\n        <td id=\"LC10970\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-en\">extend</span>(XMLText, superClass);</td>\n      </tr>\n      <tr>\n        <td id=\"L10971\" class=\"blob-num js-line-number\" data-line-number=\"10971\"></td>\n        <td id=\"LC10971\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10972\" class=\"blob-num js-line-number\" data-line-number=\"10972\"></td>\n        <td id=\"LC10972\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">function</span> <span class=\"pl-en\">XMLText</span>(<span class=\"pl-smi\">parent</span>, <span class=\"pl-smi\">text</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10973\" class=\"blob-num js-line-number\" data-line-number=\"10973\"></td>\n        <td id=\"LC10973\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">XMLText</span>.<span class=\"pl-smi\">__super__</span>.<span class=\"pl-c1\">constructor</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>, parent);</td>\n      </tr>\n      <tr>\n        <td id=\"L10974\" class=\"blob-num js-line-number\" data-line-number=\"10974\"></td>\n        <td id=\"LC10974\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (text <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10975\" class=\"blob-num js-line-number\" data-line-number=\"10975\"></td>\n        <td id=\"LC10975\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">throw</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Error</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>Missing element text<span class=\"pl-pds\">&quot;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10976\" class=\"blob-num js-line-number\" data-line-number=\"10976\"></td>\n        <td id=\"LC10976\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10977\" class=\"blob-num js-line-number\" data-line-number=\"10977\"></td>\n        <td id=\"LC10977\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span> <span class=\"pl-k\">=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-smi\">stringify</span>.<span class=\"pl-en\">eleText</span>(text);</td>\n      </tr>\n      <tr>\n        <td id=\"L10978\" class=\"blob-num js-line-number\" data-line-number=\"10978\"></td>\n        <td id=\"LC10978\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L10979\" class=\"blob-num js-line-number\" data-line-number=\"10979\"></td>\n        <td id=\"LC10979\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10980\" class=\"blob-num js-line-number\" data-line-number=\"10980\"></td>\n        <td id=\"LC10980\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLText</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">clone</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L10981\" class=\"blob-num js-line-number\" data-line-number=\"10981\"></td>\n        <td id=\"LC10981\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">XMLText</span>.<span class=\"pl-c1\">prototype</span>, <span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10982\" class=\"blob-num js-line-number\" data-line-number=\"10982\"></td>\n        <td id=\"LC10982\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L10983\" class=\"blob-num js-line-number\" data-line-number=\"10983\"></td>\n        <td id=\"LC10983\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L10984\" class=\"blob-num js-line-number\" data-line-number=\"10984\"></td>\n        <td id=\"LC10984\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">XMLText</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-en\">toString</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">options</span>, <span class=\"pl-smi\">level</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10985\" class=\"blob-num js-line-number\" data-line-number=\"10985\"></td>\n        <td id=\"LC10985\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> indent, newline, offset, pretty, r, ref, ref1, ref2, space;</td>\n      </tr>\n      <tr>\n        <td id=\"L10986\" class=\"blob-num js-line-number\" data-line-number=\"10986\"></td>\n        <td id=\"LC10986\" class=\"blob-code blob-code-inner js-file-line\">      pretty <span class=\"pl-k\">=</span> (options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">pretty</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10987\" class=\"blob-num js-line-number\" data-line-number=\"10987\"></td>\n        <td id=\"LC10987\" class=\"blob-code blob-code-inner js-file-line\">      indent <span class=\"pl-k\">=</span> (ref <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">indent</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>  <span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10988\" class=\"blob-num js-line-number\" data-line-number=\"10988\"></td>\n        <td id=\"LC10988\" class=\"blob-code blob-code-inner js-file-line\">      offset <span class=\"pl-k\">=</span> (ref1 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">offset</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref1 <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10989\" class=\"blob-num js-line-number\" data-line-number=\"10989\"></td>\n        <td id=\"LC10989\" class=\"blob-code blob-code-inner js-file-line\">      newline <span class=\"pl-k\">=</span> (ref2 <span class=\"pl-k\">=</span> options <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">options</span>.<span class=\"pl-smi\">newline</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">void</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> ref2 <span class=\"pl-k\">:</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\n</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10990\" class=\"blob-num js-line-number\" data-line-number=\"10990\"></td>\n        <td id=\"LC10990\" class=\"blob-code blob-code-inner js-file-line\">      level <span class=\"pl-k\">||</span> (level <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L10991\" class=\"blob-num js-line-number\" data-line-number=\"10991\"></td>\n        <td id=\"LC10991\" class=\"blob-code blob-code-inner js-file-line\">      space <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Array</span>(level <span class=\"pl-k\">+</span> offset <span class=\"pl-k\">+</span> <span class=\"pl-c1\">1</span>).<span class=\"pl-c1\">join</span>(indent);</td>\n      </tr>\n      <tr>\n        <td id=\"L10992\" class=\"blob-num js-line-number\" data-line-number=\"10992\"></td>\n        <td id=\"LC10992\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10993\" class=\"blob-num js-line-number\" data-line-number=\"10993\"></td>\n        <td id=\"LC10993\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10994\" class=\"blob-num js-line-number\" data-line-number=\"10994\"></td>\n        <td id=\"LC10994\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> space;</td>\n      </tr>\n      <tr>\n        <td id=\"L10995\" class=\"blob-num js-line-number\" data-line-number=\"10995\"></td>\n        <td id=\"LC10995\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L10996\" class=\"blob-num js-line-number\" data-line-number=\"10996\"></td>\n        <td id=\"LC10996\" class=\"blob-code blob-code-inner js-file-line\">      r <span class=\"pl-k\">+=</span> <span class=\"pl-v\">this</span>.<span class=\"pl-c1\">value</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L10997\" class=\"blob-num js-line-number\" data-line-number=\"10997\"></td>\n        <td id=\"LC10997\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (pretty) {</td>\n      </tr>\n      <tr>\n        <td id=\"L10998\" class=\"blob-num js-line-number\" data-line-number=\"10998\"></td>\n        <td id=\"LC10998\" class=\"blob-code blob-code-inner js-file-line\">        r <span class=\"pl-k\">+=</span> newline;</td>\n      </tr>\n      <tr>\n        <td id=\"L10999\" class=\"blob-num js-line-number\" data-line-number=\"10999\"></td>\n        <td id=\"LC10999\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L11000\" class=\"blob-num js-line-number\" data-line-number=\"11000\"></td>\n        <td id=\"LC11000\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> r;</td>\n      </tr>\n      <tr>\n        <td id=\"L11001\" class=\"blob-num js-line-number\" data-line-number=\"11001\"></td>\n        <td id=\"LC11001\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L11002\" class=\"blob-num js-line-number\" data-line-number=\"11002\"></td>\n        <td id=\"LC11002\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11003\" class=\"blob-num js-line-number\" data-line-number=\"11003\"></td>\n        <td id=\"LC11003\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> XMLText;</td>\n      </tr>\n      <tr>\n        <td id=\"L11004\" class=\"blob-num js-line-number\" data-line-number=\"11004\"></td>\n        <td id=\"LC11004\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11005\" class=\"blob-num js-line-number\" data-line-number=\"11005\"></td>\n        <td id=\"LC11005\" class=\"blob-code blob-code-inner js-file-line\">  })(XMLNode);</td>\n      </tr>\n      <tr>\n        <td id=\"L11006\" class=\"blob-num js-line-number\" data-line-number=\"11006\"></td>\n        <td id=\"LC11006\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11007\" class=\"blob-num js-line-number\" data-line-number=\"11007\"></td>\n        <td id=\"LC11007\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11008\" class=\"blob-num js-line-number\" data-line-number=\"11008\"></td>\n        <td id=\"LC11008\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11009\" class=\"blob-num js-line-number\" data-line-number=\"11009\"></td>\n        <td id=\"LC11009\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLNode<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">77</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/create<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">125</span>}],<span class=\"pl-c1\">82</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11010\" class=\"blob-num js-line-number\" data-line-number=\"11010\"></td>\n        <td id=\"LC11010\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L11011\" class=\"blob-num js-line-number\" data-line-number=\"11011\"></td>\n        <td id=\"LC11011\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> XMLBuilder, assign;</td>\n      </tr>\n      <tr>\n        <td id=\"L11012\" class=\"blob-num js-line-number\" data-line-number=\"11012\"></td>\n        <td id=\"LC11012\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11013\" class=\"blob-num js-line-number\" data-line-number=\"11013\"></td>\n        <td id=\"LC11013\" class=\"blob-code blob-code-inner js-file-line\">  assign <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>lodash/object/assign<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11014\" class=\"blob-num js-line-number\" data-line-number=\"11014\"></td>\n        <td id=\"LC11014\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11015\" class=\"blob-num js-line-number\" data-line-number=\"11015\"></td>\n        <td id=\"LC11015\" class=\"blob-code blob-code-inner js-file-line\">  XMLBuilder <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./XMLBuilder<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11016\" class=\"blob-num js-line-number\" data-line-number=\"11016\"></td>\n        <td id=\"LC11016\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11017\" class=\"blob-num js-line-number\" data-line-number=\"11017\"></td>\n        <td id=\"LC11017\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span>.<span class=\"pl-en\">create</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">name</span>, <span class=\"pl-smi\">xmldec</span>, <span class=\"pl-smi\">doctype</span>, <span class=\"pl-smi\">options</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11018\" class=\"blob-num js-line-number\" data-line-number=\"11018\"></td>\n        <td id=\"LC11018\" class=\"blob-code blob-code-inner js-file-line\">    options <span class=\"pl-k\">=</span> <span class=\"pl-en\">assign</span>({}, xmldec, doctype, options);</td>\n      </tr>\n      <tr>\n        <td id=\"L11019\" class=\"blob-num js-line-number\" data-line-number=\"11019\"></td>\n        <td id=\"LC11019\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">XMLBuilder</span>(name, options).<span class=\"pl-en\">root</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L11020\" class=\"blob-num js-line-number\" data-line-number=\"11020\"></td>\n        <td id=\"LC11020\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L11021\" class=\"blob-num js-line-number\" data-line-number=\"11021\"></td>\n        <td id=\"LC11021\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11022\" class=\"blob-num js-line-number\" data-line-number=\"11022\"></td>\n        <td id=\"LC11022\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11023\" class=\"blob-num js-line-number\" data-line-number=\"11023\"></td>\n        <td id=\"LC11023\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11024\" class=\"blob-num js-line-number\" data-line-number=\"11024\"></td>\n        <td id=\"LC11024\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./XMLBuilder<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">67</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>lodash/object/assign<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">124</span>}],<span class=\"pl-c1\">83</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11025\" class=\"blob-num js-line-number\" data-line-number=\"11025\"></td>\n        <td id=\"LC11025\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> arrayEvery <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/arrayEvery<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11026\" class=\"blob-num js-line-number\" data-line-number=\"11026\"></td>\n        <td id=\"LC11026\" class=\"blob-code blob-code-inner js-file-line\">    baseCallback <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/baseCallback<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11027\" class=\"blob-num js-line-number\" data-line-number=\"11027\"></td>\n        <td id=\"LC11027\" class=\"blob-code blob-code-inner js-file-line\">    baseEvery <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/baseEvery<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11028\" class=\"blob-num js-line-number\" data-line-number=\"11028\"></td>\n        <td id=\"LC11028\" class=\"blob-code blob-code-inner js-file-line\">    isArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isArray<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11029\" class=\"blob-num js-line-number\" data-line-number=\"11029\"></td>\n        <td id=\"LC11029\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11030\" class=\"blob-num js-line-number\" data-line-number=\"11030\"></td>\n        <td id=\"LC11030\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11031\" class=\"blob-num js-line-number\" data-line-number=\"11031\"></td>\n        <td id=\"LC11031\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">every</span>(<span class=\"pl-smi\">collection</span>, <span class=\"pl-smi\">predicate</span>, <span class=\"pl-smi\">thisArg</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11032\" class=\"blob-num js-line-number\" data-line-number=\"11032\"></td>\n        <td id=\"LC11032\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> func <span class=\"pl-k\">=</span> <span class=\"pl-en\">isArray</span>(collection) <span class=\"pl-k\">?</span> arrayEvery <span class=\"pl-k\">:</span> baseEvery;</td>\n      </tr>\n      <tr>\n        <td id=\"L11033\" class=\"blob-num js-line-number\" data-line-number=\"11033\"></td>\n        <td id=\"LC11033\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> predicate <span class=\"pl-k\">!=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> <span class=\"pl-k\">typeof</span> thisArg <span class=\"pl-k\">!=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11034\" class=\"blob-num js-line-number\" data-line-number=\"11034\"></td>\n        <td id=\"LC11034\" class=\"blob-code blob-code-inner js-file-line\">    predicate <span class=\"pl-k\">=</span> <span class=\"pl-en\">baseCallback</span>(predicate, thisArg, <span class=\"pl-c1\">3</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11035\" class=\"blob-num js-line-number\" data-line-number=\"11035\"></td>\n        <td id=\"LC11035\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11036\" class=\"blob-num js-line-number\" data-line-number=\"11036\"></td>\n        <td id=\"LC11036\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">func</span>(collection, predicate);</td>\n      </tr>\n      <tr>\n        <td id=\"L11037\" class=\"blob-num js-line-number\" data-line-number=\"11037\"></td>\n        <td id=\"LC11037\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11038\" class=\"blob-num js-line-number\" data-line-number=\"11038\"></td>\n        <td id=\"LC11038\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11039\" class=\"blob-num js-line-number\" data-line-number=\"11039\"></td>\n        <td id=\"LC11039\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> every;</td>\n      </tr>\n      <tr>\n        <td id=\"L11040\" class=\"blob-num js-line-number\" data-line-number=\"11040\"></td>\n        <td id=\"LC11040\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11041\" class=\"blob-num js-line-number\" data-line-number=\"11041\"></td>\n        <td id=\"LC11041\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/arrayEvery<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">84</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/baseCallback<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">86</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/baseEvery<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">90</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isArray<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">117</span>}],<span class=\"pl-c1\">84</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11042\" class=\"blob-num js-line-number\" data-line-number=\"11042\"></td>\n        <td id=\"LC11042\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11043\" class=\"blob-num js-line-number\" data-line-number=\"11043\"></td>\n        <td id=\"LC11043\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">arrayEvery</span>(<span class=\"pl-smi\">array</span>, <span class=\"pl-smi\">predicate</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11044\" class=\"blob-num js-line-number\" data-line-number=\"11044\"></td>\n        <td id=\"LC11044\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> index <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11045\" class=\"blob-num js-line-number\" data-line-number=\"11045\"></td>\n        <td id=\"LC11045\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">array</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11046\" class=\"blob-num js-line-number\" data-line-number=\"11046\"></td>\n        <td id=\"LC11046\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11047\" class=\"blob-num js-line-number\" data-line-number=\"11047\"></td>\n        <td id=\"LC11047\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (<span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11048\" class=\"blob-num js-line-number\" data-line-number=\"11048\"></td>\n        <td id=\"LC11048\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">predicate</span>(array[index], index, array)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11049\" class=\"blob-num js-line-number\" data-line-number=\"11049\"></td>\n        <td id=\"LC11049\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11050\" class=\"blob-num js-line-number\" data-line-number=\"11050\"></td>\n        <td id=\"LC11050\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11051\" class=\"blob-num js-line-number\" data-line-number=\"11051\"></td>\n        <td id=\"LC11051\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11052\" class=\"blob-num js-line-number\" data-line-number=\"11052\"></td>\n        <td id=\"LC11052\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11053\" class=\"blob-num js-line-number\" data-line-number=\"11053\"></td>\n        <td id=\"LC11053\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11054\" class=\"blob-num js-line-number\" data-line-number=\"11054\"></td>\n        <td id=\"LC11054\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11055\" class=\"blob-num js-line-number\" data-line-number=\"11055\"></td>\n        <td id=\"LC11055\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> arrayEvery;</td>\n      </tr>\n      <tr>\n        <td id=\"L11056\" class=\"blob-num js-line-number\" data-line-number=\"11056\"></td>\n        <td id=\"LC11056\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11057\" class=\"blob-num js-line-number\" data-line-number=\"11057\"></td>\n        <td id=\"LC11057\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">85</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11058\" class=\"blob-num js-line-number\" data-line-number=\"11058\"></td>\n        <td id=\"LC11058\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseCopy <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseCopy<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11059\" class=\"blob-num js-line-number\" data-line-number=\"11059\"></td>\n        <td id=\"LC11059\" class=\"blob-code blob-code-inner js-file-line\">    keys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../object/keys<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11060\" class=\"blob-num js-line-number\" data-line-number=\"11060\"></td>\n        <td id=\"LC11060\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11061\" class=\"blob-num js-line-number\" data-line-number=\"11061\"></td>\n        <td id=\"LC11061\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11062\" class=\"blob-num js-line-number\" data-line-number=\"11062\"></td>\n        <td id=\"LC11062\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseAssign</span>(<span class=\"pl-smi\">object</span>, <span class=\"pl-smi\">source</span>, <span class=\"pl-smi\">customizer</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11063\" class=\"blob-num js-line-number\" data-line-number=\"11063\"></td>\n        <td id=\"LC11063\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> props <span class=\"pl-k\">=</span> <span class=\"pl-en\">keys</span>(source);</td>\n      </tr>\n      <tr>\n        <td id=\"L11064\" class=\"blob-num js-line-number\" data-line-number=\"11064\"></td>\n        <td id=\"LC11064\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>customizer) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11065\" class=\"blob-num js-line-number\" data-line-number=\"11065\"></td>\n        <td id=\"LC11065\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-en\">baseCopy</span>(source, object, props);</td>\n      </tr>\n      <tr>\n        <td id=\"L11066\" class=\"blob-num js-line-number\" data-line-number=\"11066\"></td>\n        <td id=\"LC11066\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11067\" class=\"blob-num js-line-number\" data-line-number=\"11067\"></td>\n        <td id=\"LC11067\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> index <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11068\" class=\"blob-num js-line-number\" data-line-number=\"11068\"></td>\n        <td id=\"LC11068\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">props</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11069\" class=\"blob-num js-line-number\" data-line-number=\"11069\"></td>\n        <td id=\"LC11069\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11070\" class=\"blob-num js-line-number\" data-line-number=\"11070\"></td>\n        <td id=\"LC11070\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (<span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11071\" class=\"blob-num js-line-number\" data-line-number=\"11071\"></td>\n        <td id=\"LC11071\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> props[index],</td>\n      </tr>\n      <tr>\n        <td id=\"L11072\" class=\"blob-num js-line-number\" data-line-number=\"11072\"></td>\n        <td id=\"LC11072\" class=\"blob-code blob-code-inner js-file-line\">        value <span class=\"pl-k\">=</span> object[key],</td>\n      </tr>\n      <tr>\n        <td id=\"L11073\" class=\"blob-num js-line-number\" data-line-number=\"11073\"></td>\n        <td id=\"LC11073\" class=\"blob-code blob-code-inner js-file-line\">        result <span class=\"pl-k\">=</span> <span class=\"pl-en\">customizer</span>(value, source[key], key, object, source);</td>\n      </tr>\n      <tr>\n        <td id=\"L11074\" class=\"blob-num js-line-number\" data-line-number=\"11074\"></td>\n        <td id=\"LC11074\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11075\" class=\"blob-num js-line-number\" data-line-number=\"11075\"></td>\n        <td id=\"LC11075\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> ((result <span class=\"pl-k\">===</span> result <span class=\"pl-k\">?</span> (result <span class=\"pl-k\">!==</span> value) <span class=\"pl-k\">:</span> (value <span class=\"pl-k\">===</span> value)) <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11076\" class=\"blob-num js-line-number\" data-line-number=\"11076\"></td>\n        <td id=\"LC11076\" class=\"blob-code blob-code-inner js-file-line\">        (<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>(key <span class=\"pl-k\">in</span> object))) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11077\" class=\"blob-num js-line-number\" data-line-number=\"11077\"></td>\n        <td id=\"LC11077\" class=\"blob-code blob-code-inner js-file-line\">      object[key] <span class=\"pl-k\">=</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L11078\" class=\"blob-num js-line-number\" data-line-number=\"11078\"></td>\n        <td id=\"LC11078\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11079\" class=\"blob-num js-line-number\" data-line-number=\"11079\"></td>\n        <td id=\"LC11079\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11080\" class=\"blob-num js-line-number\" data-line-number=\"11080\"></td>\n        <td id=\"LC11080\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> object;</td>\n      </tr>\n      <tr>\n        <td id=\"L11081\" class=\"blob-num js-line-number\" data-line-number=\"11081\"></td>\n        <td id=\"LC11081\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11082\" class=\"blob-num js-line-number\" data-line-number=\"11082\"></td>\n        <td id=\"LC11082\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11083\" class=\"blob-num js-line-number\" data-line-number=\"11083\"></td>\n        <td id=\"LC11083\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseAssign;</td>\n      </tr>\n      <tr>\n        <td id=\"L11084\" class=\"blob-num js-line-number\" data-line-number=\"11084\"></td>\n        <td id=\"LC11084\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11085\" class=\"blob-num js-line-number\" data-line-number=\"11085\"></td>\n        <td id=\"LC11085\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../object/keys<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">126</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseCopy<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">87</span>}],<span class=\"pl-c1\">86</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11086\" class=\"blob-num js-line-number\" data-line-number=\"11086\"></td>\n        <td id=\"LC11086\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseMatches <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseMatches<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11087\" class=\"blob-num js-line-number\" data-line-number=\"11087\"></td>\n        <td id=\"LC11087\" class=\"blob-code blob-code-inner js-file-line\">    baseMatchesProperty <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseMatchesProperty<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11088\" class=\"blob-num js-line-number\" data-line-number=\"11088\"></td>\n        <td id=\"LC11088\" class=\"blob-code blob-code-inner js-file-line\">    baseProperty <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseProperty<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11089\" class=\"blob-num js-line-number\" data-line-number=\"11089\"></td>\n        <td id=\"LC11089\" class=\"blob-code blob-code-inner js-file-line\">    bindCallback <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./bindCallback<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11090\" class=\"blob-num js-line-number\" data-line-number=\"11090\"></td>\n        <td id=\"LC11090\" class=\"blob-code blob-code-inner js-file-line\">    identity <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../utility/identity<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11091\" class=\"blob-num js-line-number\" data-line-number=\"11091\"></td>\n        <td id=\"LC11091\" class=\"blob-code blob-code-inner js-file-line\">    isBindable <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isBindable<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11092\" class=\"blob-num js-line-number\" data-line-number=\"11092\"></td>\n        <td id=\"LC11092\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11093\" class=\"blob-num js-line-number\" data-line-number=\"11093\"></td>\n        <td id=\"LC11093\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11094\" class=\"blob-num js-line-number\" data-line-number=\"11094\"></td>\n        <td id=\"LC11094\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseCallback</span>(<span class=\"pl-smi\">func</span>, <span class=\"pl-smi\">thisArg</span>, <span class=\"pl-smi\">argCount</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11095\" class=\"blob-num js-line-number\" data-line-number=\"11095\"></td>\n        <td id=\"LC11095\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> type <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> func;</td>\n      </tr>\n      <tr>\n        <td id=\"L11096\" class=\"blob-num js-line-number\" data-line-number=\"11096\"></td>\n        <td id=\"LC11096\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (type <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11097\" class=\"blob-num js-line-number\" data-line-number=\"11097\"></td>\n        <td id=\"LC11097\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> (<span class=\"pl-k\">typeof</span> thisArg <span class=\"pl-k\">!=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isBindable</span>(func))</td>\n      </tr>\n      <tr>\n        <td id=\"L11098\" class=\"blob-num js-line-number\" data-line-number=\"11098\"></td>\n        <td id=\"LC11098\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">?</span> <span class=\"pl-en\">bindCallback</span>(func, thisArg, argCount)</td>\n      </tr>\n      <tr>\n        <td id=\"L11099\" class=\"blob-num js-line-number\" data-line-number=\"11099\"></td>\n        <td id=\"LC11099\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">:</span> func;</td>\n      </tr>\n      <tr>\n        <td id=\"L11100\" class=\"blob-num js-line-number\" data-line-number=\"11100\"></td>\n        <td id=\"LC11100\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11101\" class=\"blob-num js-line-number\" data-line-number=\"11101\"></td>\n        <td id=\"LC11101\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (func <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11102\" class=\"blob-num js-line-number\" data-line-number=\"11102\"></td>\n        <td id=\"LC11102\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> identity;</td>\n      </tr>\n      <tr>\n        <td id=\"L11103\" class=\"blob-num js-line-number\" data-line-number=\"11103\"></td>\n        <td id=\"LC11103\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11104\" class=\"blob-num js-line-number\" data-line-number=\"11104\"></td>\n        <td id=\"LC11104\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (type <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11105\" class=\"blob-num js-line-number\" data-line-number=\"11105\"></td>\n        <td id=\"LC11105\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-en\">baseMatches</span>(func);</td>\n      </tr>\n      <tr>\n        <td id=\"L11106\" class=\"blob-num js-line-number\" data-line-number=\"11106\"></td>\n        <td id=\"LC11106\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11107\" class=\"blob-num js-line-number\" data-line-number=\"11107\"></td>\n        <td id=\"LC11107\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> thisArg <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L11108\" class=\"blob-num js-line-number\" data-line-number=\"11108\"></td>\n        <td id=\"LC11108\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">?</span> <span class=\"pl-en\">baseProperty</span>(func <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L11109\" class=\"blob-num js-line-number\" data-line-number=\"11109\"></td>\n        <td id=\"LC11109\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">:</span> <span class=\"pl-en\">baseMatchesProperty</span>(func <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>, thisArg);</td>\n      </tr>\n      <tr>\n        <td id=\"L11110\" class=\"blob-num js-line-number\" data-line-number=\"11110\"></td>\n        <td id=\"LC11110\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11111\" class=\"blob-num js-line-number\" data-line-number=\"11111\"></td>\n        <td id=\"LC11111\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11112\" class=\"blob-num js-line-number\" data-line-number=\"11112\"></td>\n        <td id=\"LC11112\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseCallback;</td>\n      </tr>\n      <tr>\n        <td id=\"L11113\" class=\"blob-num js-line-number\" data-line-number=\"11113\"></td>\n        <td id=\"LC11113\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11114\" class=\"blob-num js-line-number\" data-line-number=\"11114\"></td>\n        <td id=\"LC11114\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../utility/identity<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">130</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseMatches<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">97</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseMatchesProperty<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">98</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseProperty<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">99</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./bindCallback<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">102</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isBindable<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">107</span>}],<span class=\"pl-c1\">87</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11115\" class=\"blob-num js-line-number\" data-line-number=\"11115\"></td>\n        <td id=\"LC11115\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11116\" class=\"blob-num js-line-number\" data-line-number=\"11116\"></td>\n        <td id=\"LC11116\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseCopy</span>(<span class=\"pl-smi\">source</span>, <span class=\"pl-smi\">object</span>, <span class=\"pl-smi\">props</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11117\" class=\"blob-num js-line-number\" data-line-number=\"11117\"></td>\n        <td id=\"LC11117\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>props) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11118\" class=\"blob-num js-line-number\" data-line-number=\"11118\"></td>\n        <td id=\"LC11118\" class=\"blob-code blob-code-inner js-file-line\">    props <span class=\"pl-k\">=</span> object;</td>\n      </tr>\n      <tr>\n        <td id=\"L11119\" class=\"blob-num js-line-number\" data-line-number=\"11119\"></td>\n        <td id=\"LC11119\" class=\"blob-code blob-code-inner js-file-line\">    object <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L11120\" class=\"blob-num js-line-number\" data-line-number=\"11120\"></td>\n        <td id=\"LC11120\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11121\" class=\"blob-num js-line-number\" data-line-number=\"11121\"></td>\n        <td id=\"LC11121\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> index <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11122\" class=\"blob-num js-line-number\" data-line-number=\"11122\"></td>\n        <td id=\"LC11122\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">props</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11123\" class=\"blob-num js-line-number\" data-line-number=\"11123\"></td>\n        <td id=\"LC11123\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11124\" class=\"blob-num js-line-number\" data-line-number=\"11124\"></td>\n        <td id=\"LC11124\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (<span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11125\" class=\"blob-num js-line-number\" data-line-number=\"11125\"></td>\n        <td id=\"LC11125\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> props[index];</td>\n      </tr>\n      <tr>\n        <td id=\"L11126\" class=\"blob-num js-line-number\" data-line-number=\"11126\"></td>\n        <td id=\"LC11126\" class=\"blob-code blob-code-inner js-file-line\">    object[key] <span class=\"pl-k\">=</span> source[key];</td>\n      </tr>\n      <tr>\n        <td id=\"L11127\" class=\"blob-num js-line-number\" data-line-number=\"11127\"></td>\n        <td id=\"LC11127\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11128\" class=\"blob-num js-line-number\" data-line-number=\"11128\"></td>\n        <td id=\"LC11128\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> object;</td>\n      </tr>\n      <tr>\n        <td id=\"L11129\" class=\"blob-num js-line-number\" data-line-number=\"11129\"></td>\n        <td id=\"LC11129\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11130\" class=\"blob-num js-line-number\" data-line-number=\"11130\"></td>\n        <td id=\"LC11130\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11131\" class=\"blob-num js-line-number\" data-line-number=\"11131\"></td>\n        <td id=\"LC11131\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseCopy;</td>\n      </tr>\n      <tr>\n        <td id=\"L11132\" class=\"blob-num js-line-number\" data-line-number=\"11132\"></td>\n        <td id=\"LC11132\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11133\" class=\"blob-num js-line-number\" data-line-number=\"11133\"></td>\n        <td id=\"LC11133\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">88</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11134\" class=\"blob-num js-line-number\" data-line-number=\"11134\"></td>\n        <td id=\"LC11134\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span> (<span class=\"pl-c1\">global</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11135\" class=\"blob-num js-line-number\" data-line-number=\"11135\"></td>\n        <td id=\"LC11135\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isObject<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11136\" class=\"blob-num js-line-number\" data-line-number=\"11136\"></td>\n        <td id=\"LC11136\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11137\" class=\"blob-num js-line-number\" data-line-number=\"11137\"></td>\n        <td id=\"LC11137\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11138\" class=\"blob-num js-line-number\" data-line-number=\"11138\"></td>\n        <td id=\"LC11138\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseCreate <span class=\"pl-k\">=</span> (<span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L11139\" class=\"blob-num js-line-number\" data-line-number=\"11139\"></td>\n        <td id=\"LC11139\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">function</span> <span class=\"pl-en\">Object</span>() {}</td>\n      </tr>\n      <tr>\n        <td id=\"L11140\" class=\"blob-num js-line-number\" data-line-number=\"11140\"></td>\n        <td id=\"LC11140\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">prototype</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11141\" class=\"blob-num js-line-number\" data-line-number=\"11141\"></td>\n        <td id=\"LC11141\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isObject</span>(prototype)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11142\" class=\"blob-num js-line-number\" data-line-number=\"11142\"></td>\n        <td id=\"LC11142\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> prototype;</td>\n      </tr>\n      <tr>\n        <td id=\"L11143\" class=\"blob-num js-line-number\" data-line-number=\"11143\"></td>\n        <td id=\"LC11143\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">Object</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11144\" class=\"blob-num js-line-number\" data-line-number=\"11144\"></td>\n        <td id=\"LC11144\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11145\" class=\"blob-num js-line-number\" data-line-number=\"11145\"></td>\n        <td id=\"LC11145\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11146\" class=\"blob-num js-line-number\" data-line-number=\"11146\"></td>\n        <td id=\"LC11146\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> result <span class=\"pl-k\">||</span> <span class=\"pl-c1\">global</span>.<span class=\"pl-en\">Object</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L11147\" class=\"blob-num js-line-number\" data-line-number=\"11147\"></td>\n        <td id=\"LC11147\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L11148\" class=\"blob-num js-line-number\" data-line-number=\"11148\"></td>\n        <td id=\"LC11148\" class=\"blob-code blob-code-inner js-file-line\">}());</td>\n      </tr>\n      <tr>\n        <td id=\"L11149\" class=\"blob-num js-line-number\" data-line-number=\"11149\"></td>\n        <td id=\"LC11149\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11150\" class=\"blob-num js-line-number\" data-line-number=\"11150\"></td>\n        <td id=\"LC11150\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseCreate;</td>\n      </tr>\n      <tr>\n        <td id=\"L11151\" class=\"blob-num js-line-number\" data-line-number=\"11151\"></td>\n        <td id=\"LC11151\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11152\" class=\"blob-num js-line-number\" data-line-number=\"11152\"></td>\n        <td id=\"LC11152\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>,<span class=\"pl-k\">typeof</span> self <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> self <span class=\"pl-k\">:</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">:</span> {})</td>\n      </tr>\n      <tr>\n        <td id=\"L11153\" class=\"blob-num js-line-number\" data-line-number=\"11153\"></td>\n        <td id=\"LC11153\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">121</span>}],<span class=\"pl-c1\">89</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11154\" class=\"blob-num js-line-number\" data-line-number=\"11154\"></td>\n        <td id=\"LC11154\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseForOwn <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseForOwn<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11155\" class=\"blob-num js-line-number\" data-line-number=\"11155\"></td>\n        <td id=\"LC11155\" class=\"blob-code blob-code-inner js-file-line\">    isLength <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isLength<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11156\" class=\"blob-num js-line-number\" data-line-number=\"11156\"></td>\n        <td id=\"LC11156\" class=\"blob-code blob-code-inner js-file-line\">    toObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./toObject<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11157\" class=\"blob-num js-line-number\" data-line-number=\"11157\"></td>\n        <td id=\"LC11157\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11158\" class=\"blob-num js-line-number\" data-line-number=\"11158\"></td>\n        <td id=\"LC11158\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11159\" class=\"blob-num js-line-number\" data-line-number=\"11159\"></td>\n        <td id=\"LC11159\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseEach</span>(<span class=\"pl-smi\">collection</span>, <span class=\"pl-smi\">iteratee</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11160\" class=\"blob-num js-line-number\" data-line-number=\"11160\"></td>\n        <td id=\"LC11160\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> collection <span class=\"pl-k\">?</span> <span class=\"pl-smi\">collection</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11161\" class=\"blob-num js-line-number\" data-line-number=\"11161\"></td>\n        <td id=\"LC11161\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isLength</span>(length)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11162\" class=\"blob-num js-line-number\" data-line-number=\"11162\"></td>\n        <td id=\"LC11162\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-en\">baseForOwn</span>(collection, iteratee);</td>\n      </tr>\n      <tr>\n        <td id=\"L11163\" class=\"blob-num js-line-number\" data-line-number=\"11163\"></td>\n        <td id=\"LC11163\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11164\" class=\"blob-num js-line-number\" data-line-number=\"11164\"></td>\n        <td id=\"LC11164\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> index <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11165\" class=\"blob-num js-line-number\" data-line-number=\"11165\"></td>\n        <td id=\"LC11165\" class=\"blob-code blob-code-inner js-file-line\">      iterable <span class=\"pl-k\">=</span> <span class=\"pl-en\">toObject</span>(collection);</td>\n      </tr>\n      <tr>\n        <td id=\"L11166\" class=\"blob-num js-line-number\" data-line-number=\"11166\"></td>\n        <td id=\"LC11166\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11167\" class=\"blob-num js-line-number\" data-line-number=\"11167\"></td>\n        <td id=\"LC11167\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (<span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11168\" class=\"blob-num js-line-number\" data-line-number=\"11168\"></td>\n        <td id=\"LC11168\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-en\">iteratee</span>(iterable[index], index, iterable) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">false</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11169\" class=\"blob-num js-line-number\" data-line-number=\"11169\"></td>\n        <td id=\"LC11169\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11170\" class=\"blob-num js-line-number\" data-line-number=\"11170\"></td>\n        <td id=\"LC11170\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11171\" class=\"blob-num js-line-number\" data-line-number=\"11171\"></td>\n        <td id=\"LC11171\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11172\" class=\"blob-num js-line-number\" data-line-number=\"11172\"></td>\n        <td id=\"LC11172\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> collection;</td>\n      </tr>\n      <tr>\n        <td id=\"L11173\" class=\"blob-num js-line-number\" data-line-number=\"11173\"></td>\n        <td id=\"LC11173\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11174\" class=\"blob-num js-line-number\" data-line-number=\"11174\"></td>\n        <td id=\"LC11174\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11175\" class=\"blob-num js-line-number\" data-line-number=\"11175\"></td>\n        <td id=\"LC11175\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseEach;</td>\n      </tr>\n      <tr>\n        <td id=\"L11176\" class=\"blob-num js-line-number\" data-line-number=\"11176\"></td>\n        <td id=\"LC11176\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11177\" class=\"blob-num js-line-number\" data-line-number=\"11177\"></td>\n        <td id=\"LC11177\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseForOwn<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">92</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isLength<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">110</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./toObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">115</span>}],<span class=\"pl-c1\">90</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11178\" class=\"blob-num js-line-number\" data-line-number=\"11178\"></td>\n        <td id=\"LC11178\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseEach <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseEach<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11179\" class=\"blob-num js-line-number\" data-line-number=\"11179\"></td>\n        <td id=\"LC11179\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11180\" class=\"blob-num js-line-number\" data-line-number=\"11180\"></td>\n        <td id=\"LC11180\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11181\" class=\"blob-num js-line-number\" data-line-number=\"11181\"></td>\n        <td id=\"LC11181\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseEvery</span>(<span class=\"pl-smi\">collection</span>, <span class=\"pl-smi\">predicate</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11182\" class=\"blob-num js-line-number\" data-line-number=\"11182\"></td>\n        <td id=\"LC11182\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11183\" class=\"blob-num js-line-number\" data-line-number=\"11183\"></td>\n        <td id=\"LC11183\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">baseEach</span>(collection, <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">index</span>, <span class=\"pl-smi\">collection</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11184\" class=\"blob-num js-line-number\" data-line-number=\"11184\"></td>\n        <td id=\"LC11184\" class=\"blob-code blob-code-inner js-file-line\">    result <span class=\"pl-k\">=</span> <span class=\"pl-k\">!!</span><span class=\"pl-en\">predicate</span>(value, index, collection);</td>\n      </tr>\n      <tr>\n        <td id=\"L11185\" class=\"blob-num js-line-number\" data-line-number=\"11185\"></td>\n        <td id=\"LC11185\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L11186\" class=\"blob-num js-line-number\" data-line-number=\"11186\"></td>\n        <td id=\"LC11186\" class=\"blob-code blob-code-inner js-file-line\">  });</td>\n      </tr>\n      <tr>\n        <td id=\"L11187\" class=\"blob-num js-line-number\" data-line-number=\"11187\"></td>\n        <td id=\"LC11187\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L11188\" class=\"blob-num js-line-number\" data-line-number=\"11188\"></td>\n        <td id=\"LC11188\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11189\" class=\"blob-num js-line-number\" data-line-number=\"11189\"></td>\n        <td id=\"LC11189\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11190\" class=\"blob-num js-line-number\" data-line-number=\"11190\"></td>\n        <td id=\"LC11190\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseEvery;</td>\n      </tr>\n      <tr>\n        <td id=\"L11191\" class=\"blob-num js-line-number\" data-line-number=\"11191\"></td>\n        <td id=\"LC11191\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11192\" class=\"blob-num js-line-number\" data-line-number=\"11192\"></td>\n        <td id=\"LC11192\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseEach<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">89</span>}],<span class=\"pl-c1\">91</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11193\" class=\"blob-num js-line-number\" data-line-number=\"11193\"></td>\n        <td id=\"LC11193\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> toObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./toObject<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11194\" class=\"blob-num js-line-number\" data-line-number=\"11194\"></td>\n        <td id=\"LC11194\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11195\" class=\"blob-num js-line-number\" data-line-number=\"11195\"></td>\n        <td id=\"LC11195\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11196\" class=\"blob-num js-line-number\" data-line-number=\"11196\"></td>\n        <td id=\"LC11196\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseFor</span>(<span class=\"pl-smi\">object</span>, <span class=\"pl-smi\">iteratee</span>, <span class=\"pl-smi\">keysFunc</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11197\" class=\"blob-num js-line-number\" data-line-number=\"11197\"></td>\n        <td id=\"LC11197\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> index <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11198\" class=\"blob-num js-line-number\" data-line-number=\"11198\"></td>\n        <td id=\"LC11198\" class=\"blob-code blob-code-inner js-file-line\">      iterable <span class=\"pl-k\">=</span> <span class=\"pl-en\">toObject</span>(object),</td>\n      </tr>\n      <tr>\n        <td id=\"L11199\" class=\"blob-num js-line-number\" data-line-number=\"11199\"></td>\n        <td id=\"LC11199\" class=\"blob-code blob-code-inner js-file-line\">      props <span class=\"pl-k\">=</span> <span class=\"pl-en\">keysFunc</span>(object),</td>\n      </tr>\n      <tr>\n        <td id=\"L11200\" class=\"blob-num js-line-number\" data-line-number=\"11200\"></td>\n        <td id=\"LC11200\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">props</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11201\" class=\"blob-num js-line-number\" data-line-number=\"11201\"></td>\n        <td id=\"LC11201\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11202\" class=\"blob-num js-line-number\" data-line-number=\"11202\"></td>\n        <td id=\"LC11202\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (<span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11203\" class=\"blob-num js-line-number\" data-line-number=\"11203\"></td>\n        <td id=\"LC11203\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> props[index];</td>\n      </tr>\n      <tr>\n        <td id=\"L11204\" class=\"blob-num js-line-number\" data-line-number=\"11204\"></td>\n        <td id=\"LC11204\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-en\">iteratee</span>(iterable[key], key, iterable) <span class=\"pl-k\">===</span> <span class=\"pl-c1\">false</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11205\" class=\"blob-num js-line-number\" data-line-number=\"11205\"></td>\n        <td id=\"LC11205\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11206\" class=\"blob-num js-line-number\" data-line-number=\"11206\"></td>\n        <td id=\"LC11206\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11207\" class=\"blob-num js-line-number\" data-line-number=\"11207\"></td>\n        <td id=\"LC11207\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11208\" class=\"blob-num js-line-number\" data-line-number=\"11208\"></td>\n        <td id=\"LC11208\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> object;</td>\n      </tr>\n      <tr>\n        <td id=\"L11209\" class=\"blob-num js-line-number\" data-line-number=\"11209\"></td>\n        <td id=\"LC11209\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11210\" class=\"blob-num js-line-number\" data-line-number=\"11210\"></td>\n        <td id=\"LC11210\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11211\" class=\"blob-num js-line-number\" data-line-number=\"11211\"></td>\n        <td id=\"LC11211\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseFor;</td>\n      </tr>\n      <tr>\n        <td id=\"L11212\" class=\"blob-num js-line-number\" data-line-number=\"11212\"></td>\n        <td id=\"LC11212\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11213\" class=\"blob-num js-line-number\" data-line-number=\"11213\"></td>\n        <td id=\"LC11213\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./toObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">115</span>}],<span class=\"pl-c1\">92</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11214\" class=\"blob-num js-line-number\" data-line-number=\"11214\"></td>\n        <td id=\"LC11214\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseFor <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseFor<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11215\" class=\"blob-num js-line-number\" data-line-number=\"11215\"></td>\n        <td id=\"LC11215\" class=\"blob-code blob-code-inner js-file-line\">    keys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../object/keys<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11216\" class=\"blob-num js-line-number\" data-line-number=\"11216\"></td>\n        <td id=\"LC11216\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11217\" class=\"blob-num js-line-number\" data-line-number=\"11217\"></td>\n        <td id=\"LC11217\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11218\" class=\"blob-num js-line-number\" data-line-number=\"11218\"></td>\n        <td id=\"LC11218\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseForOwn</span>(<span class=\"pl-smi\">object</span>, <span class=\"pl-smi\">iteratee</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11219\" class=\"blob-num js-line-number\" data-line-number=\"11219\"></td>\n        <td id=\"LC11219\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">baseFor</span>(object, iteratee, keys);</td>\n      </tr>\n      <tr>\n        <td id=\"L11220\" class=\"blob-num js-line-number\" data-line-number=\"11220\"></td>\n        <td id=\"LC11220\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11221\" class=\"blob-num js-line-number\" data-line-number=\"11221\"></td>\n        <td id=\"LC11221\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11222\" class=\"blob-num js-line-number\" data-line-number=\"11222\"></td>\n        <td id=\"LC11222\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseForOwn;</td>\n      </tr>\n      <tr>\n        <td id=\"L11223\" class=\"blob-num js-line-number\" data-line-number=\"11223\"></td>\n        <td id=\"LC11223\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11224\" class=\"blob-num js-line-number\" data-line-number=\"11224\"></td>\n        <td id=\"LC11224\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../object/keys<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">126</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseFor<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">91</span>}],<span class=\"pl-c1\">93</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11225\" class=\"blob-num js-line-number\" data-line-number=\"11225\"></td>\n        <td id=\"LC11225\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseIsEqualDeep <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseIsEqualDeep<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11226\" class=\"blob-num js-line-number\" data-line-number=\"11226\"></td>\n        <td id=\"LC11226\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11227\" class=\"blob-num js-line-number\" data-line-number=\"11227\"></td>\n        <td id=\"LC11227\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11228\" class=\"blob-num js-line-number\" data-line-number=\"11228\"></td>\n        <td id=\"LC11228\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseIsEqual</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">other</span>, <span class=\"pl-smi\">customizer</span>, <span class=\"pl-smi\">isWhere</span>, <span class=\"pl-smi\">stackA</span>, <span class=\"pl-smi\">stackB</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11229\" class=\"blob-num js-line-number\" data-line-number=\"11229\"></td>\n        <td id=\"LC11229\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">===</span> other) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11230\" class=\"blob-num js-line-number\" data-line-number=\"11230\"></td>\n        <td id=\"LC11230\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> value <span class=\"pl-k\">!==</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">||</span> (<span class=\"pl-c1\">1</span> <span class=\"pl-k\">/</span> value <span class=\"pl-k\">==</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">/</span> other);</td>\n      </tr>\n      <tr>\n        <td id=\"L11231\" class=\"blob-num js-line-number\" data-line-number=\"11231\"></td>\n        <td id=\"LC11231\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11232\" class=\"blob-num js-line-number\" data-line-number=\"11232\"></td>\n        <td id=\"LC11232\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> valType <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> value,</td>\n      </tr>\n      <tr>\n        <td id=\"L11233\" class=\"blob-num js-line-number\" data-line-number=\"11233\"></td>\n        <td id=\"LC11233\" class=\"blob-code blob-code-inner js-file-line\">      othType <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> other;</td>\n      </tr>\n      <tr>\n        <td id=\"L11234\" class=\"blob-num js-line-number\" data-line-number=\"11234\"></td>\n        <td id=\"LC11234\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11235\" class=\"blob-num js-line-number\" data-line-number=\"11235\"></td>\n        <td id=\"LC11235\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> ((valType <span class=\"pl-k\">!=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> valType <span class=\"pl-k\">!=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> othType <span class=\"pl-k\">!=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> othType <span class=\"pl-k\">!=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11236\" class=\"blob-num js-line-number\" data-line-number=\"11236\"></td>\n        <td id=\"LC11236\" class=\"blob-code blob-code-inner js-file-line\">      value <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">||</span> other <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11237\" class=\"blob-num js-line-number\" data-line-number=\"11237\"></td>\n        <td id=\"LC11237\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> value <span class=\"pl-k\">!==</span> value <span class=\"pl-k\">&amp;&amp;</span> other <span class=\"pl-k\">!==</span> other;</td>\n      </tr>\n      <tr>\n        <td id=\"L11238\" class=\"blob-num js-line-number\" data-line-number=\"11238\"></td>\n        <td id=\"LC11238\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11239\" class=\"blob-num js-line-number\" data-line-number=\"11239\"></td>\n        <td id=\"LC11239\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">baseIsEqualDeep</span>(value, other, baseIsEqual, customizer, isWhere, stackA, stackB);</td>\n      </tr>\n      <tr>\n        <td id=\"L11240\" class=\"blob-num js-line-number\" data-line-number=\"11240\"></td>\n        <td id=\"LC11240\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11241\" class=\"blob-num js-line-number\" data-line-number=\"11241\"></td>\n        <td id=\"LC11241\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11242\" class=\"blob-num js-line-number\" data-line-number=\"11242\"></td>\n        <td id=\"LC11242\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseIsEqual;</td>\n      </tr>\n      <tr>\n        <td id=\"L11243\" class=\"blob-num js-line-number\" data-line-number=\"11243\"></td>\n        <td id=\"LC11243\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11244\" class=\"blob-num js-line-number\" data-line-number=\"11244\"></td>\n        <td id=\"LC11244\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseIsEqualDeep<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">94</span>}],<span class=\"pl-c1\">94</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11245\" class=\"blob-num js-line-number\" data-line-number=\"11245\"></td>\n        <td id=\"LC11245\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> equalArrays <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./equalArrays<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11246\" class=\"blob-num js-line-number\" data-line-number=\"11246\"></td>\n        <td id=\"LC11246\" class=\"blob-code blob-code-inner js-file-line\">    equalByTag <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./equalByTag<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11247\" class=\"blob-num js-line-number\" data-line-number=\"11247\"></td>\n        <td id=\"LC11247\" class=\"blob-code blob-code-inner js-file-line\">    equalObjects <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./equalObjects<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11248\" class=\"blob-num js-line-number\" data-line-number=\"11248\"></td>\n        <td id=\"LC11248\" class=\"blob-code blob-code-inner js-file-line\">    isArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isArray<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11249\" class=\"blob-num js-line-number\" data-line-number=\"11249\"></td>\n        <td id=\"LC11249\" class=\"blob-code blob-code-inner js-file-line\">    isTypedArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isTypedArray<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11250\" class=\"blob-num js-line-number\" data-line-number=\"11250\"></td>\n        <td id=\"LC11250\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11251\" class=\"blob-num js-line-number\" data-line-number=\"11251\"></td>\n        <td id=\"LC11251\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11252\" class=\"blob-num js-line-number\" data-line-number=\"11252\"></td>\n        <td id=\"LC11252\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> argsTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Arguments]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11253\" class=\"blob-num js-line-number\" data-line-number=\"11253\"></td>\n        <td id=\"LC11253\" class=\"blob-code blob-code-inner js-file-line\">    arrayTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Array]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11254\" class=\"blob-num js-line-number\" data-line-number=\"11254\"></td>\n        <td id=\"LC11254\" class=\"blob-code blob-code-inner js-file-line\">    objectTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Object]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11255\" class=\"blob-num js-line-number\" data-line-number=\"11255\"></td>\n        <td id=\"LC11255\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11256\" class=\"blob-num js-line-number\" data-line-number=\"11256\"></td>\n        <td id=\"LC11256\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11257\" class=\"blob-num js-line-number\" data-line-number=\"11257\"></td>\n        <td id=\"LC11257\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11258\" class=\"blob-num js-line-number\" data-line-number=\"11258\"></td>\n        <td id=\"LC11258\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11259\" class=\"blob-num js-line-number\" data-line-number=\"11259\"></td>\n        <td id=\"LC11259\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11260\" class=\"blob-num js-line-number\" data-line-number=\"11260\"></td>\n        <td id=\"LC11260\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> hasOwnProperty <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11261\" class=\"blob-num js-line-number\" data-line-number=\"11261\"></td>\n        <td id=\"LC11261\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11262\" class=\"blob-num js-line-number\" data-line-number=\"11262\"></td>\n        <td id=\"LC11262\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11263\" class=\"blob-num js-line-number\" data-line-number=\"11263\"></td>\n        <td id=\"LC11263\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objToString <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">toString</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11264\" class=\"blob-num js-line-number\" data-line-number=\"11264\"></td>\n        <td id=\"LC11264\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11265\" class=\"blob-num js-line-number\" data-line-number=\"11265\"></td>\n        <td id=\"LC11265\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11266\" class=\"blob-num js-line-number\" data-line-number=\"11266\"></td>\n        <td id=\"LC11266\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseIsEqualDeep</span>(<span class=\"pl-smi\">object</span>, <span class=\"pl-smi\">other</span>, <span class=\"pl-smi\">equalFunc</span>, <span class=\"pl-smi\">customizer</span>, <span class=\"pl-smi\">isWhere</span>, <span class=\"pl-smi\">stackA</span>, <span class=\"pl-smi\">stackB</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11267\" class=\"blob-num js-line-number\" data-line-number=\"11267\"></td>\n        <td id=\"LC11267\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> objIsArr <span class=\"pl-k\">=</span> <span class=\"pl-en\">isArray</span>(object),</td>\n      </tr>\n      <tr>\n        <td id=\"L11268\" class=\"blob-num js-line-number\" data-line-number=\"11268\"></td>\n        <td id=\"LC11268\" class=\"blob-code blob-code-inner js-file-line\">      othIsArr <span class=\"pl-k\">=</span> <span class=\"pl-en\">isArray</span>(other),</td>\n      </tr>\n      <tr>\n        <td id=\"L11269\" class=\"blob-num js-line-number\" data-line-number=\"11269\"></td>\n        <td id=\"LC11269\" class=\"blob-code blob-code-inner js-file-line\">      objTag <span class=\"pl-k\">=</span> arrayTag,</td>\n      </tr>\n      <tr>\n        <td id=\"L11270\" class=\"blob-num js-line-number\" data-line-number=\"11270\"></td>\n        <td id=\"LC11270\" class=\"blob-code blob-code-inner js-file-line\">      othTag <span class=\"pl-k\">=</span> arrayTag;</td>\n      </tr>\n      <tr>\n        <td id=\"L11271\" class=\"blob-num js-line-number\" data-line-number=\"11271\"></td>\n        <td id=\"LC11271\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11272\" class=\"blob-num js-line-number\" data-line-number=\"11272\"></td>\n        <td id=\"LC11272\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>objIsArr) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11273\" class=\"blob-num js-line-number\" data-line-number=\"11273\"></td>\n        <td id=\"LC11273\" class=\"blob-code blob-code-inner js-file-line\">    objTag <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objToString</span>.<span class=\"pl-c1\">call</span>(object);</td>\n      </tr>\n      <tr>\n        <td id=\"L11274\" class=\"blob-num js-line-number\" data-line-number=\"11274\"></td>\n        <td id=\"LC11274\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (objTag <span class=\"pl-k\">==</span> argsTag) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11275\" class=\"blob-num js-line-number\" data-line-number=\"11275\"></td>\n        <td id=\"LC11275\" class=\"blob-code blob-code-inner js-file-line\">      objTag <span class=\"pl-k\">=</span> objectTag;</td>\n      </tr>\n      <tr>\n        <td id=\"L11276\" class=\"blob-num js-line-number\" data-line-number=\"11276\"></td>\n        <td id=\"LC11276\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (objTag <span class=\"pl-k\">!=</span> objectTag) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11277\" class=\"blob-num js-line-number\" data-line-number=\"11277\"></td>\n        <td id=\"LC11277\" class=\"blob-code blob-code-inner js-file-line\">      objIsArr <span class=\"pl-k\">=</span> <span class=\"pl-en\">isTypedArray</span>(object);</td>\n      </tr>\n      <tr>\n        <td id=\"L11278\" class=\"blob-num js-line-number\" data-line-number=\"11278\"></td>\n        <td id=\"LC11278\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11279\" class=\"blob-num js-line-number\" data-line-number=\"11279\"></td>\n        <td id=\"LC11279\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11280\" class=\"blob-num js-line-number\" data-line-number=\"11280\"></td>\n        <td id=\"LC11280\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>othIsArr) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11281\" class=\"blob-num js-line-number\" data-line-number=\"11281\"></td>\n        <td id=\"LC11281\" class=\"blob-code blob-code-inner js-file-line\">    othTag <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objToString</span>.<span class=\"pl-c1\">call</span>(other);</td>\n      </tr>\n      <tr>\n        <td id=\"L11282\" class=\"blob-num js-line-number\" data-line-number=\"11282\"></td>\n        <td id=\"LC11282\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (othTag <span class=\"pl-k\">==</span> argsTag) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11283\" class=\"blob-num js-line-number\" data-line-number=\"11283\"></td>\n        <td id=\"LC11283\" class=\"blob-code blob-code-inner js-file-line\">      othTag <span class=\"pl-k\">=</span> objectTag;</td>\n      </tr>\n      <tr>\n        <td id=\"L11284\" class=\"blob-num js-line-number\" data-line-number=\"11284\"></td>\n        <td id=\"LC11284\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> <span class=\"pl-k\">if</span> (othTag <span class=\"pl-k\">!=</span> objectTag) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11285\" class=\"blob-num js-line-number\" data-line-number=\"11285\"></td>\n        <td id=\"LC11285\" class=\"blob-code blob-code-inner js-file-line\">      othIsArr <span class=\"pl-k\">=</span> <span class=\"pl-en\">isTypedArray</span>(other);</td>\n      </tr>\n      <tr>\n        <td id=\"L11286\" class=\"blob-num js-line-number\" data-line-number=\"11286\"></td>\n        <td id=\"LC11286\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11287\" class=\"blob-num js-line-number\" data-line-number=\"11287\"></td>\n        <td id=\"LC11287\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11288\" class=\"blob-num js-line-number\" data-line-number=\"11288\"></td>\n        <td id=\"LC11288\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> objIsObj <span class=\"pl-k\">=</span> objTag <span class=\"pl-k\">==</span> objectTag,</td>\n      </tr>\n      <tr>\n        <td id=\"L11289\" class=\"blob-num js-line-number\" data-line-number=\"11289\"></td>\n        <td id=\"LC11289\" class=\"blob-code blob-code-inner js-file-line\">      othIsObj <span class=\"pl-k\">=</span> othTag <span class=\"pl-k\">==</span> objectTag,</td>\n      </tr>\n      <tr>\n        <td id=\"L11290\" class=\"blob-num js-line-number\" data-line-number=\"11290\"></td>\n        <td id=\"LC11290\" class=\"blob-code blob-code-inner js-file-line\">      isSameTag <span class=\"pl-k\">=</span> objTag <span class=\"pl-k\">==</span> othTag;</td>\n      </tr>\n      <tr>\n        <td id=\"L11291\" class=\"blob-num js-line-number\" data-line-number=\"11291\"></td>\n        <td id=\"LC11291\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11292\" class=\"blob-num js-line-number\" data-line-number=\"11292\"></td>\n        <td id=\"LC11292\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (isSameTag <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>(objIsArr <span class=\"pl-k\">||</span> objIsObj)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11293\" class=\"blob-num js-line-number\" data-line-number=\"11293\"></td>\n        <td id=\"LC11293\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-en\">equalByTag</span>(object, other, objTag);</td>\n      </tr>\n      <tr>\n        <td id=\"L11294\" class=\"blob-num js-line-number\" data-line-number=\"11294\"></td>\n        <td id=\"LC11294\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11295\" class=\"blob-num js-line-number\" data-line-number=\"11295\"></td>\n        <td id=\"LC11295\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> valWrapped <span class=\"pl-k\">=</span> objIsObj <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(object, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>__wrapped__<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11296\" class=\"blob-num js-line-number\" data-line-number=\"11296\"></td>\n        <td id=\"LC11296\" class=\"blob-code blob-code-inner js-file-line\">      othWrapped <span class=\"pl-k\">=</span> othIsObj <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(other, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>__wrapped__<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11297\" class=\"blob-num js-line-number\" data-line-number=\"11297\"></td>\n        <td id=\"LC11297\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11298\" class=\"blob-num js-line-number\" data-line-number=\"11298\"></td>\n        <td id=\"LC11298\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (valWrapped <span class=\"pl-k\">||</span> othWrapped) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11299\" class=\"blob-num js-line-number\" data-line-number=\"11299\"></td>\n        <td id=\"LC11299\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-en\">equalFunc</span>(valWrapped <span class=\"pl-k\">?</span> <span class=\"pl-smi\">object</span>.<span class=\"pl-c1\">value</span>() <span class=\"pl-k\">:</span> object, othWrapped <span class=\"pl-k\">?</span> <span class=\"pl-smi\">other</span>.<span class=\"pl-c1\">value</span>() <span class=\"pl-k\">:</span> other, customizer, isWhere, stackA, stackB);</td>\n      </tr>\n      <tr>\n        <td id=\"L11300\" class=\"blob-num js-line-number\" data-line-number=\"11300\"></td>\n        <td id=\"LC11300\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11301\" class=\"blob-num js-line-number\" data-line-number=\"11301\"></td>\n        <td id=\"LC11301\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>isSameTag) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11302\" class=\"blob-num js-line-number\" data-line-number=\"11302\"></td>\n        <td id=\"LC11302\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11303\" class=\"blob-num js-line-number\" data-line-number=\"11303\"></td>\n        <td id=\"LC11303\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11304\" class=\"blob-num js-line-number\" data-line-number=\"11304\"></td>\n        <td id=\"LC11304\" class=\"blob-code blob-code-inner js-file-line\">  stackA <span class=\"pl-k\">||</span> (stackA <span class=\"pl-k\">=</span> []);</td>\n      </tr>\n      <tr>\n        <td id=\"L11305\" class=\"blob-num js-line-number\" data-line-number=\"11305\"></td>\n        <td id=\"LC11305\" class=\"blob-code blob-code-inner js-file-line\">  stackB <span class=\"pl-k\">||</span> (stackB <span class=\"pl-k\">=</span> []);</td>\n      </tr>\n      <tr>\n        <td id=\"L11306\" class=\"blob-num js-line-number\" data-line-number=\"11306\"></td>\n        <td id=\"LC11306\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11307\" class=\"blob-num js-line-number\" data-line-number=\"11307\"></td>\n        <td id=\"LC11307\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">stackA</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11308\" class=\"blob-num js-line-number\" data-line-number=\"11308\"></td>\n        <td id=\"LC11308\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (length<span class=\"pl-k\">--</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11309\" class=\"blob-num js-line-number\" data-line-number=\"11309\"></td>\n        <td id=\"LC11309\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (stackA[length] <span class=\"pl-k\">==</span> object) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11310\" class=\"blob-num js-line-number\" data-line-number=\"11310\"></td>\n        <td id=\"LC11310\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> stackB[length] <span class=\"pl-k\">==</span> other;</td>\n      </tr>\n      <tr>\n        <td id=\"L11311\" class=\"blob-num js-line-number\" data-line-number=\"11311\"></td>\n        <td id=\"LC11311\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11312\" class=\"blob-num js-line-number\" data-line-number=\"11312\"></td>\n        <td id=\"LC11312\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11313\" class=\"blob-num js-line-number\" data-line-number=\"11313\"></td>\n        <td id=\"LC11313\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">stackA</span>.<span class=\"pl-c1\">push</span>(object);</td>\n      </tr>\n      <tr>\n        <td id=\"L11314\" class=\"blob-num js-line-number\" data-line-number=\"11314\"></td>\n        <td id=\"LC11314\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">stackB</span>.<span class=\"pl-c1\">push</span>(other);</td>\n      </tr>\n      <tr>\n        <td id=\"L11315\" class=\"blob-num js-line-number\" data-line-number=\"11315\"></td>\n        <td id=\"LC11315\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11316\" class=\"blob-num js-line-number\" data-line-number=\"11316\"></td>\n        <td id=\"LC11316\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> (objIsArr <span class=\"pl-k\">?</span> equalArrays <span class=\"pl-k\">:</span> equalObjects)(object, other, equalFunc, customizer, isWhere, stackA, stackB);</td>\n      </tr>\n      <tr>\n        <td id=\"L11317\" class=\"blob-num js-line-number\" data-line-number=\"11317\"></td>\n        <td id=\"LC11317\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11318\" class=\"blob-num js-line-number\" data-line-number=\"11318\"></td>\n        <td id=\"LC11318\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">stackA</span>.<span class=\"pl-c1\">pop</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L11319\" class=\"blob-num js-line-number\" data-line-number=\"11319\"></td>\n        <td id=\"LC11319\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">stackB</span>.<span class=\"pl-c1\">pop</span>();</td>\n      </tr>\n      <tr>\n        <td id=\"L11320\" class=\"blob-num js-line-number\" data-line-number=\"11320\"></td>\n        <td id=\"LC11320\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11321\" class=\"blob-num js-line-number\" data-line-number=\"11321\"></td>\n        <td id=\"LC11321\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L11322\" class=\"blob-num js-line-number\" data-line-number=\"11322\"></td>\n        <td id=\"LC11322\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11323\" class=\"blob-num js-line-number\" data-line-number=\"11323\"></td>\n        <td id=\"LC11323\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11324\" class=\"blob-num js-line-number\" data-line-number=\"11324\"></td>\n        <td id=\"LC11324\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseIsEqualDeep;</td>\n      </tr>\n      <tr>\n        <td id=\"L11325\" class=\"blob-num js-line-number\" data-line-number=\"11325\"></td>\n        <td id=\"LC11325\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11326\" class=\"blob-num js-line-number\" data-line-number=\"11326\"></td>\n        <td id=\"LC11326\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isArray<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">117</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isTypedArray<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">123</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./equalArrays<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">104</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./equalByTag<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">105</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./equalObjects<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">106</span>}],<span class=\"pl-c1\">95</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11327\" class=\"blob-num js-line-number\" data-line-number=\"11327\"></td>\n        <td id=\"LC11327\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11328\" class=\"blob-num js-line-number\" data-line-number=\"11328\"></td>\n        <td id=\"LC11328\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseIsFunction</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11329\" class=\"blob-num js-line-number\" data-line-number=\"11329\"></td>\n        <td id=\"LC11329\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11330\" class=\"blob-num js-line-number\" data-line-number=\"11330\"></td>\n        <td id=\"LC11330\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11331\" class=\"blob-num js-line-number\" data-line-number=\"11331\"></td>\n        <td id=\"LC11331\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11332\" class=\"blob-num js-line-number\" data-line-number=\"11332\"></td>\n        <td id=\"LC11332\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseIsFunction;</td>\n      </tr>\n      <tr>\n        <td id=\"L11333\" class=\"blob-num js-line-number\" data-line-number=\"11333\"></td>\n        <td id=\"LC11333\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11334\" class=\"blob-num js-line-number\" data-line-number=\"11334\"></td>\n        <td id=\"LC11334\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">96</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11335\" class=\"blob-num js-line-number\" data-line-number=\"11335\"></td>\n        <td id=\"LC11335\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseIsEqual <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseIsEqual<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11336\" class=\"blob-num js-line-number\" data-line-number=\"11336\"></td>\n        <td id=\"LC11336\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11337\" class=\"blob-num js-line-number\" data-line-number=\"11337\"></td>\n        <td id=\"LC11337\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11338\" class=\"blob-num js-line-number\" data-line-number=\"11338\"></td>\n        <td id=\"LC11338\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11339\" class=\"blob-num js-line-number\" data-line-number=\"11339\"></td>\n        <td id=\"LC11339\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11340\" class=\"blob-num js-line-number\" data-line-number=\"11340\"></td>\n        <td id=\"LC11340\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11341\" class=\"blob-num js-line-number\" data-line-number=\"11341\"></td>\n        <td id=\"LC11341\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> hasOwnProperty <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11342\" class=\"blob-num js-line-number\" data-line-number=\"11342\"></td>\n        <td id=\"LC11342\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11343\" class=\"blob-num js-line-number\" data-line-number=\"11343\"></td>\n        <td id=\"LC11343\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11344\" class=\"blob-num js-line-number\" data-line-number=\"11344\"></td>\n        <td id=\"LC11344\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseIsMatch</span>(<span class=\"pl-smi\">object</span>, <span class=\"pl-smi\">props</span>, <span class=\"pl-smi\">values</span>, <span class=\"pl-smi\">strictCompareFlags</span>, <span class=\"pl-smi\">customizer</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11345\" class=\"blob-num js-line-number\" data-line-number=\"11345\"></td>\n        <td id=\"LC11345\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">props</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11346\" class=\"blob-num js-line-number\" data-line-number=\"11346\"></td>\n        <td id=\"LC11346\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (object <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11347\" class=\"blob-num js-line-number\" data-line-number=\"11347\"></td>\n        <td id=\"LC11347\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">!</span>length;</td>\n      </tr>\n      <tr>\n        <td id=\"L11348\" class=\"blob-num js-line-number\" data-line-number=\"11348\"></td>\n        <td id=\"LC11348\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11349\" class=\"blob-num js-line-number\" data-line-number=\"11349\"></td>\n        <td id=\"LC11349\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> index <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11350\" class=\"blob-num js-line-number\" data-line-number=\"11350\"></td>\n        <td id=\"LC11350\" class=\"blob-code blob-code-inner js-file-line\">      noCustomizer <span class=\"pl-k\">=</span> <span class=\"pl-k\">!</span>customizer;</td>\n      </tr>\n      <tr>\n        <td id=\"L11351\" class=\"blob-num js-line-number\" data-line-number=\"11351\"></td>\n        <td id=\"LC11351\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11352\" class=\"blob-num js-line-number\" data-line-number=\"11352\"></td>\n        <td id=\"LC11352\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (<span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11353\" class=\"blob-num js-line-number\" data-line-number=\"11353\"></td>\n        <td id=\"LC11353\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> ((noCustomizer <span class=\"pl-k\">&amp;&amp;</span> strictCompareFlags[index])</td>\n      </tr>\n      <tr>\n        <td id=\"L11354\" class=\"blob-num js-line-number\" data-line-number=\"11354\"></td>\n        <td id=\"LC11354\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">?</span> values[index] <span class=\"pl-k\">!==</span> object[props[index]]</td>\n      </tr>\n      <tr>\n        <td id=\"L11355\" class=\"blob-num js-line-number\" data-line-number=\"11355\"></td>\n        <td id=\"LC11355\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">:</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(object, props[index])</td>\n      </tr>\n      <tr>\n        <td id=\"L11356\" class=\"blob-num js-line-number\" data-line-number=\"11356\"></td>\n        <td id=\"LC11356\" class=\"blob-code blob-code-inner js-file-line\">        ) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11357\" class=\"blob-num js-line-number\" data-line-number=\"11357\"></td>\n        <td id=\"LC11357\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11358\" class=\"blob-num js-line-number\" data-line-number=\"11358\"></td>\n        <td id=\"LC11358\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11359\" class=\"blob-num js-line-number\" data-line-number=\"11359\"></td>\n        <td id=\"LC11359\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11360\" class=\"blob-num js-line-number\" data-line-number=\"11360\"></td>\n        <td id=\"LC11360\" class=\"blob-code blob-code-inner js-file-line\">  index <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11361\" class=\"blob-num js-line-number\" data-line-number=\"11361\"></td>\n        <td id=\"LC11361\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (<span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11362\" class=\"blob-num js-line-number\" data-line-number=\"11362\"></td>\n        <td id=\"LC11362\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> props[index];</td>\n      </tr>\n      <tr>\n        <td id=\"L11363\" class=\"blob-num js-line-number\" data-line-number=\"11363\"></td>\n        <td id=\"LC11363\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (noCustomizer <span class=\"pl-k\">&amp;&amp;</span> strictCompareFlags[index]) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11364\" class=\"blob-num js-line-number\" data-line-number=\"11364\"></td>\n        <td id=\"LC11364\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(object, key);</td>\n      </tr>\n      <tr>\n        <td id=\"L11365\" class=\"blob-num js-line-number\" data-line-number=\"11365\"></td>\n        <td id=\"LC11365\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L11366\" class=\"blob-num js-line-number\" data-line-number=\"11366\"></td>\n        <td id=\"LC11366\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> objValue <span class=\"pl-k\">=</span> object[key],</td>\n      </tr>\n      <tr>\n        <td id=\"L11367\" class=\"blob-num js-line-number\" data-line-number=\"11367\"></td>\n        <td id=\"LC11367\" class=\"blob-code blob-code-inner js-file-line\">          srcValue <span class=\"pl-k\">=</span> values[index];</td>\n      </tr>\n      <tr>\n        <td id=\"L11368\" class=\"blob-num js-line-number\" data-line-number=\"11368\"></td>\n        <td id=\"LC11368\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11369\" class=\"blob-num js-line-number\" data-line-number=\"11369\"></td>\n        <td id=\"LC11369\" class=\"blob-code blob-code-inner js-file-line\">      result <span class=\"pl-k\">=</span> customizer <span class=\"pl-k\">?</span> <span class=\"pl-en\">customizer</span>(objValue, srcValue, key) <span class=\"pl-k\">:</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11370\" class=\"blob-num js-line-number\" data-line-number=\"11370\"></td>\n        <td id=\"LC11370\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> result <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11371\" class=\"blob-num js-line-number\" data-line-number=\"11371\"></td>\n        <td id=\"LC11371\" class=\"blob-code blob-code-inner js-file-line\">        result <span class=\"pl-k\">=</span> <span class=\"pl-en\">baseIsEqual</span>(srcValue, objValue, customizer, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11372\" class=\"blob-num js-line-number\" data-line-number=\"11372\"></td>\n        <td id=\"LC11372\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L11373\" class=\"blob-num js-line-number\" data-line-number=\"11373\"></td>\n        <td id=\"LC11373\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11374\" class=\"blob-num js-line-number\" data-line-number=\"11374\"></td>\n        <td id=\"LC11374\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>result) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11375\" class=\"blob-num js-line-number\" data-line-number=\"11375\"></td>\n        <td id=\"LC11375\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11376\" class=\"blob-num js-line-number\" data-line-number=\"11376\"></td>\n        <td id=\"LC11376\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11377\" class=\"blob-num js-line-number\" data-line-number=\"11377\"></td>\n        <td id=\"LC11377\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11378\" class=\"blob-num js-line-number\" data-line-number=\"11378\"></td>\n        <td id=\"LC11378\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11379\" class=\"blob-num js-line-number\" data-line-number=\"11379\"></td>\n        <td id=\"LC11379\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11380\" class=\"blob-num js-line-number\" data-line-number=\"11380\"></td>\n        <td id=\"LC11380\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11381\" class=\"blob-num js-line-number\" data-line-number=\"11381\"></td>\n        <td id=\"LC11381\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseIsMatch;</td>\n      </tr>\n      <tr>\n        <td id=\"L11382\" class=\"blob-num js-line-number\" data-line-number=\"11382\"></td>\n        <td id=\"LC11382\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11383\" class=\"blob-num js-line-number\" data-line-number=\"11383\"></td>\n        <td id=\"LC11383\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseIsEqual<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">93</span>}],<span class=\"pl-c1\">97</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11384\" class=\"blob-num js-line-number\" data-line-number=\"11384\"></td>\n        <td id=\"LC11384\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseIsMatch <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseIsMatch<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11385\" class=\"blob-num js-line-number\" data-line-number=\"11385\"></td>\n        <td id=\"LC11385\" class=\"blob-code blob-code-inner js-file-line\">    isStrictComparable <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isStrictComparable<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11386\" class=\"blob-num js-line-number\" data-line-number=\"11386\"></td>\n        <td id=\"LC11386\" class=\"blob-code blob-code-inner js-file-line\">    keys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../object/keys<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11387\" class=\"blob-num js-line-number\" data-line-number=\"11387\"></td>\n        <td id=\"LC11387\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11388\" class=\"blob-num js-line-number\" data-line-number=\"11388\"></td>\n        <td id=\"LC11388\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11389\" class=\"blob-num js-line-number\" data-line-number=\"11389\"></td>\n        <td id=\"LC11389\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11390\" class=\"blob-num js-line-number\" data-line-number=\"11390\"></td>\n        <td id=\"LC11390\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11391\" class=\"blob-num js-line-number\" data-line-number=\"11391\"></td>\n        <td id=\"LC11391\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11392\" class=\"blob-num js-line-number\" data-line-number=\"11392\"></td>\n        <td id=\"LC11392\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> hasOwnProperty <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11393\" class=\"blob-num js-line-number\" data-line-number=\"11393\"></td>\n        <td id=\"LC11393\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11394\" class=\"blob-num js-line-number\" data-line-number=\"11394\"></td>\n        <td id=\"LC11394\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11395\" class=\"blob-num js-line-number\" data-line-number=\"11395\"></td>\n        <td id=\"LC11395\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseMatches</span>(<span class=\"pl-smi\">source</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11396\" class=\"blob-num js-line-number\" data-line-number=\"11396\"></td>\n        <td id=\"LC11396\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> props <span class=\"pl-k\">=</span> <span class=\"pl-en\">keys</span>(source),</td>\n      </tr>\n      <tr>\n        <td id=\"L11397\" class=\"blob-num js-line-number\" data-line-number=\"11397\"></td>\n        <td id=\"LC11397\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">props</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11398\" class=\"blob-num js-line-number\" data-line-number=\"11398\"></td>\n        <td id=\"LC11398\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11399\" class=\"blob-num js-line-number\" data-line-number=\"11399\"></td>\n        <td id=\"LC11399\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (length <span class=\"pl-k\">==</span> <span class=\"pl-c1\">1</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11400\" class=\"blob-num js-line-number\" data-line-number=\"11400\"></td>\n        <td id=\"LC11400\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> props[<span class=\"pl-c1\">0</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L11401\" class=\"blob-num js-line-number\" data-line-number=\"11401\"></td>\n        <td id=\"LC11401\" class=\"blob-code blob-code-inner js-file-line\">        value <span class=\"pl-k\">=</span> source[key];</td>\n      </tr>\n      <tr>\n        <td id=\"L11402\" class=\"blob-num js-line-number\" data-line-number=\"11402\"></td>\n        <td id=\"LC11402\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11403\" class=\"blob-num js-line-number\" data-line-number=\"11403\"></td>\n        <td id=\"LC11403\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isStrictComparable</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11404\" class=\"blob-num js-line-number\" data-line-number=\"11404\"></td>\n        <td id=\"LC11404\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11405\" class=\"blob-num js-line-number\" data-line-number=\"11405\"></td>\n        <td id=\"LC11405\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">return</span> object <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">&amp;&amp;</span> object[key] <span class=\"pl-k\">===</span> value <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(object, key);</td>\n      </tr>\n      <tr>\n        <td id=\"L11406\" class=\"blob-num js-line-number\" data-line-number=\"11406\"></td>\n        <td id=\"LC11406\" class=\"blob-code blob-code-inner js-file-line\">      };</td>\n      </tr>\n      <tr>\n        <td id=\"L11407\" class=\"blob-num js-line-number\" data-line-number=\"11407\"></td>\n        <td id=\"LC11407\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11408\" class=\"blob-num js-line-number\" data-line-number=\"11408\"></td>\n        <td id=\"LC11408\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11409\" class=\"blob-num js-line-number\" data-line-number=\"11409\"></td>\n        <td id=\"LC11409\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> values <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Array</span>(length),</td>\n      </tr>\n      <tr>\n        <td id=\"L11410\" class=\"blob-num js-line-number\" data-line-number=\"11410\"></td>\n        <td id=\"LC11410\" class=\"blob-code blob-code-inner js-file-line\">      strictCompareFlags <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Array</span>(length);</td>\n      </tr>\n      <tr>\n        <td id=\"L11411\" class=\"blob-num js-line-number\" data-line-number=\"11411\"></td>\n        <td id=\"LC11411\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11412\" class=\"blob-num js-line-number\" data-line-number=\"11412\"></td>\n        <td id=\"LC11412\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (length<span class=\"pl-k\">--</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11413\" class=\"blob-num js-line-number\" data-line-number=\"11413\"></td>\n        <td id=\"LC11413\" class=\"blob-code blob-code-inner js-file-line\">    value <span class=\"pl-k\">=</span> source[props[length]];</td>\n      </tr>\n      <tr>\n        <td id=\"L11414\" class=\"blob-num js-line-number\" data-line-number=\"11414\"></td>\n        <td id=\"LC11414\" class=\"blob-code blob-code-inner js-file-line\">    values[length] <span class=\"pl-k\">=</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L11415\" class=\"blob-num js-line-number\" data-line-number=\"11415\"></td>\n        <td id=\"LC11415\" class=\"blob-code blob-code-inner js-file-line\">    strictCompareFlags[length] <span class=\"pl-k\">=</span> <span class=\"pl-en\">isStrictComparable</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L11416\" class=\"blob-num js-line-number\" data-line-number=\"11416\"></td>\n        <td id=\"LC11416\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11417\" class=\"blob-num js-line-number\" data-line-number=\"11417\"></td>\n        <td id=\"LC11417\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11418\" class=\"blob-num js-line-number\" data-line-number=\"11418\"></td>\n        <td id=\"LC11418\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-en\">baseIsMatch</span>(object, props, values, strictCompareFlags);</td>\n      </tr>\n      <tr>\n        <td id=\"L11419\" class=\"blob-num js-line-number\" data-line-number=\"11419\"></td>\n        <td id=\"LC11419\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L11420\" class=\"blob-num js-line-number\" data-line-number=\"11420\"></td>\n        <td id=\"LC11420\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11421\" class=\"blob-num js-line-number\" data-line-number=\"11421\"></td>\n        <td id=\"LC11421\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11422\" class=\"blob-num js-line-number\" data-line-number=\"11422\"></td>\n        <td id=\"LC11422\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseMatches;</td>\n      </tr>\n      <tr>\n        <td id=\"L11423\" class=\"blob-num js-line-number\" data-line-number=\"11423\"></td>\n        <td id=\"LC11423\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11424\" class=\"blob-num js-line-number\" data-line-number=\"11424\"></td>\n        <td id=\"LC11424\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../object/keys<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">126</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseIsMatch<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">96</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isStrictComparable<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">112</span>}],<span class=\"pl-c1\">98</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11425\" class=\"blob-num js-line-number\" data-line-number=\"11425\"></td>\n        <td id=\"LC11425\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseIsEqual <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseIsEqual<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11426\" class=\"blob-num js-line-number\" data-line-number=\"11426\"></td>\n        <td id=\"LC11426\" class=\"blob-code blob-code-inner js-file-line\">    isStrictComparable <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isStrictComparable<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11427\" class=\"blob-num js-line-number\" data-line-number=\"11427\"></td>\n        <td id=\"LC11427\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11428\" class=\"blob-num js-line-number\" data-line-number=\"11428\"></td>\n        <td id=\"LC11428\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11429\" class=\"blob-num js-line-number\" data-line-number=\"11429\"></td>\n        <td id=\"LC11429\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseMatchesProperty</span>(<span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11430\" class=\"blob-num js-line-number\" data-line-number=\"11430\"></td>\n        <td id=\"LC11430\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isStrictComparable</span>(value)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11431\" class=\"blob-num js-line-number\" data-line-number=\"11431\"></td>\n        <td id=\"LC11431\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11432\" class=\"blob-num js-line-number\" data-line-number=\"11432\"></td>\n        <td id=\"LC11432\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> object <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">&amp;&amp;</span> object[key] <span class=\"pl-k\">===</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L11433\" class=\"blob-num js-line-number\" data-line-number=\"11433\"></td>\n        <td id=\"LC11433\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L11434\" class=\"blob-num js-line-number\" data-line-number=\"11434\"></td>\n        <td id=\"LC11434\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11435\" class=\"blob-num js-line-number\" data-line-number=\"11435\"></td>\n        <td id=\"LC11435\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11436\" class=\"blob-num js-line-number\" data-line-number=\"11436\"></td>\n        <td id=\"LC11436\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> object <span class=\"pl-k\">!=</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">baseIsEqual</span>(value, object[key], <span class=\"pl-c1\">null</span>, <span class=\"pl-c1\">true</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11437\" class=\"blob-num js-line-number\" data-line-number=\"11437\"></td>\n        <td id=\"LC11437\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L11438\" class=\"blob-num js-line-number\" data-line-number=\"11438\"></td>\n        <td id=\"LC11438\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11439\" class=\"blob-num js-line-number\" data-line-number=\"11439\"></td>\n        <td id=\"LC11439\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11440\" class=\"blob-num js-line-number\" data-line-number=\"11440\"></td>\n        <td id=\"LC11440\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseMatchesProperty;</td>\n      </tr>\n      <tr>\n        <td id=\"L11441\" class=\"blob-num js-line-number\" data-line-number=\"11441\"></td>\n        <td id=\"LC11441\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11442\" class=\"blob-num js-line-number\" data-line-number=\"11442\"></td>\n        <td id=\"LC11442\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseIsEqual<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">93</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isStrictComparable<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">112</span>}],<span class=\"pl-c1\">99</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11443\" class=\"blob-num js-line-number\" data-line-number=\"11443\"></td>\n        <td id=\"LC11443\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11444\" class=\"blob-num js-line-number\" data-line-number=\"11444\"></td>\n        <td id=\"LC11444\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseProperty</span>(<span class=\"pl-smi\">key</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11445\" class=\"blob-num js-line-number\" data-line-number=\"11445\"></td>\n        <td id=\"LC11445\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11446\" class=\"blob-num js-line-number\" data-line-number=\"11446\"></td>\n        <td id=\"LC11446\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> object <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">undefined</span> <span class=\"pl-k\">:</span> object[key];</td>\n      </tr>\n      <tr>\n        <td id=\"L11447\" class=\"blob-num js-line-number\" data-line-number=\"11447\"></td>\n        <td id=\"LC11447\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L11448\" class=\"blob-num js-line-number\" data-line-number=\"11448\"></td>\n        <td id=\"LC11448\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11449\" class=\"blob-num js-line-number\" data-line-number=\"11449\"></td>\n        <td id=\"LC11449\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11450\" class=\"blob-num js-line-number\" data-line-number=\"11450\"></td>\n        <td id=\"LC11450\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseProperty;</td>\n      </tr>\n      <tr>\n        <td id=\"L11451\" class=\"blob-num js-line-number\" data-line-number=\"11451\"></td>\n        <td id=\"LC11451\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11452\" class=\"blob-num js-line-number\" data-line-number=\"11452\"></td>\n        <td id=\"LC11452\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">100</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11453\" class=\"blob-num js-line-number\" data-line-number=\"11453\"></td>\n        <td id=\"LC11453\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> identity <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../utility/identity<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11454\" class=\"blob-num js-line-number\" data-line-number=\"11454\"></td>\n        <td id=\"LC11454\" class=\"blob-code blob-code-inner js-file-line\">    metaMap <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./metaMap<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11455\" class=\"blob-num js-line-number\" data-line-number=\"11455\"></td>\n        <td id=\"LC11455\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11456\" class=\"blob-num js-line-number\" data-line-number=\"11456\"></td>\n        <td id=\"LC11456\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11457\" class=\"blob-num js-line-number\" data-line-number=\"11457\"></td>\n        <td id=\"LC11457\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseSetData <span class=\"pl-k\">=</span> <span class=\"pl-k\">!</span>metaMap <span class=\"pl-k\">?</span> <span class=\"pl-en\">identity</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">func</span>, <span class=\"pl-smi\">data</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11458\" class=\"blob-num js-line-number\" data-line-number=\"11458\"></td>\n        <td id=\"LC11458\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">metaMap</span>.<span class=\"pl-en\">set</span>(func, data);</td>\n      </tr>\n      <tr>\n        <td id=\"L11459\" class=\"blob-num js-line-number\" data-line-number=\"11459\"></td>\n        <td id=\"LC11459\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> func;</td>\n      </tr>\n      <tr>\n        <td id=\"L11460\" class=\"blob-num js-line-number\" data-line-number=\"11460\"></td>\n        <td id=\"LC11460\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L11461\" class=\"blob-num js-line-number\" data-line-number=\"11461\"></td>\n        <td id=\"LC11461\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11462\" class=\"blob-num js-line-number\" data-line-number=\"11462\"></td>\n        <td id=\"LC11462\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseSetData;</td>\n      </tr>\n      <tr>\n        <td id=\"L11463\" class=\"blob-num js-line-number\" data-line-number=\"11463\"></td>\n        <td id=\"LC11463\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11464\" class=\"blob-num js-line-number\" data-line-number=\"11464\"></td>\n        <td id=\"LC11464\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../utility/identity<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">130</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./metaMap<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">113</span>}],<span class=\"pl-c1\">101</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11465\" class=\"blob-num js-line-number\" data-line-number=\"11465\"></td>\n        <td id=\"LC11465\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11466\" class=\"blob-num js-line-number\" data-line-number=\"11466\"></td>\n        <td id=\"LC11466\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">baseToString</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11467\" class=\"blob-num js-line-number\" data-line-number=\"11467\"></td>\n        <td id=\"LC11467\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11468\" class=\"blob-num js-line-number\" data-line-number=\"11468\"></td>\n        <td id=\"LC11468\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L11469\" class=\"blob-num js-line-number\" data-line-number=\"11469\"></td>\n        <td id=\"LC11469\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11470\" class=\"blob-num js-line-number\" data-line-number=\"11470\"></td>\n        <td id=\"LC11470\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> value <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">:</span> (value <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11471\" class=\"blob-num js-line-number\" data-line-number=\"11471\"></td>\n        <td id=\"LC11471\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11472\" class=\"blob-num js-line-number\" data-line-number=\"11472\"></td>\n        <td id=\"LC11472\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11473\" class=\"blob-num js-line-number\" data-line-number=\"11473\"></td>\n        <td id=\"LC11473\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> baseToString;</td>\n      </tr>\n      <tr>\n        <td id=\"L11474\" class=\"blob-num js-line-number\" data-line-number=\"11474\"></td>\n        <td id=\"LC11474\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11475\" class=\"blob-num js-line-number\" data-line-number=\"11475\"></td>\n        <td id=\"LC11475\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">102</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11476\" class=\"blob-num js-line-number\" data-line-number=\"11476\"></td>\n        <td id=\"LC11476\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> identity <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../utility/identity<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11477\" class=\"blob-num js-line-number\" data-line-number=\"11477\"></td>\n        <td id=\"LC11477\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11478\" class=\"blob-num js-line-number\" data-line-number=\"11478\"></td>\n        <td id=\"LC11478\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11479\" class=\"blob-num js-line-number\" data-line-number=\"11479\"></td>\n        <td id=\"LC11479\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">bindCallback</span>(<span class=\"pl-smi\">func</span>, <span class=\"pl-smi\">thisArg</span>, <span class=\"pl-smi\">argCount</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11480\" class=\"blob-num js-line-number\" data-line-number=\"11480\"></td>\n        <td id=\"LC11480\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> func <span class=\"pl-k\">!=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11481\" class=\"blob-num js-line-number\" data-line-number=\"11481\"></td>\n        <td id=\"LC11481\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> identity;</td>\n      </tr>\n      <tr>\n        <td id=\"L11482\" class=\"blob-num js-line-number\" data-line-number=\"11482\"></td>\n        <td id=\"LC11482\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11483\" class=\"blob-num js-line-number\" data-line-number=\"11483\"></td>\n        <td id=\"LC11483\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> thisArg <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11484\" class=\"blob-num js-line-number\" data-line-number=\"11484\"></td>\n        <td id=\"LC11484\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> func;</td>\n      </tr>\n      <tr>\n        <td id=\"L11485\" class=\"blob-num js-line-number\" data-line-number=\"11485\"></td>\n        <td id=\"LC11485\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11486\" class=\"blob-num js-line-number\" data-line-number=\"11486\"></td>\n        <td id=\"LC11486\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (argCount) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11487\" class=\"blob-num js-line-number\" data-line-number=\"11487\"></td>\n        <td id=\"LC11487\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-c1\">1</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11488\" class=\"blob-num js-line-number\" data-line-number=\"11488\"></td>\n        <td id=\"LC11488\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">func</span>.<span class=\"pl-c1\">call</span>(thisArg, value);</td>\n      </tr>\n      <tr>\n        <td id=\"L11489\" class=\"blob-num js-line-number\" data-line-number=\"11489\"></td>\n        <td id=\"LC11489\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L11490\" class=\"blob-num js-line-number\" data-line-number=\"11490\"></td>\n        <td id=\"LC11490\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-c1\">3</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">index</span>, <span class=\"pl-smi\">collection</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11491\" class=\"blob-num js-line-number\" data-line-number=\"11491\"></td>\n        <td id=\"LC11491\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">func</span>.<span class=\"pl-c1\">call</span>(thisArg, value, index, collection);</td>\n      </tr>\n      <tr>\n        <td id=\"L11492\" class=\"blob-num js-line-number\" data-line-number=\"11492\"></td>\n        <td id=\"LC11492\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L11493\" class=\"blob-num js-line-number\" data-line-number=\"11493\"></td>\n        <td id=\"LC11493\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-c1\">4</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">accumulator</span>, <span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">index</span>, <span class=\"pl-smi\">collection</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11494\" class=\"blob-num js-line-number\" data-line-number=\"11494\"></td>\n        <td id=\"LC11494\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">func</span>.<span class=\"pl-c1\">call</span>(thisArg, accumulator, value, index, collection);</td>\n      </tr>\n      <tr>\n        <td id=\"L11495\" class=\"blob-num js-line-number\" data-line-number=\"11495\"></td>\n        <td id=\"LC11495\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L11496\" class=\"blob-num js-line-number\" data-line-number=\"11496\"></td>\n        <td id=\"LC11496\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> <span class=\"pl-c1\">5</span><span class=\"pl-k\">:</span> <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">other</span>, <span class=\"pl-smi\">key</span>, <span class=\"pl-smi\">object</span>, <span class=\"pl-smi\">source</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11497\" class=\"blob-num js-line-number\" data-line-number=\"11497\"></td>\n        <td id=\"LC11497\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">func</span>.<span class=\"pl-c1\">call</span>(thisArg, value, other, key, object, source);</td>\n      </tr>\n      <tr>\n        <td id=\"L11498\" class=\"blob-num js-line-number\" data-line-number=\"11498\"></td>\n        <td id=\"LC11498\" class=\"blob-code blob-code-inner js-file-line\">    };</td>\n      </tr>\n      <tr>\n        <td id=\"L11499\" class=\"blob-num js-line-number\" data-line-number=\"11499\"></td>\n        <td id=\"LC11499\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11500\" class=\"blob-num js-line-number\" data-line-number=\"11500\"></td>\n        <td id=\"LC11500\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L11501\" class=\"blob-num js-line-number\" data-line-number=\"11501\"></td>\n        <td id=\"LC11501\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">func</span>.<span class=\"pl-c1\">apply</span>(thisArg, <span class=\"pl-v\">arguments</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11502\" class=\"blob-num js-line-number\" data-line-number=\"11502\"></td>\n        <td id=\"LC11502\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L11503\" class=\"blob-num js-line-number\" data-line-number=\"11503\"></td>\n        <td id=\"LC11503\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11504\" class=\"blob-num js-line-number\" data-line-number=\"11504\"></td>\n        <td id=\"LC11504\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11505\" class=\"blob-num js-line-number\" data-line-number=\"11505\"></td>\n        <td id=\"LC11505\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> bindCallback;</td>\n      </tr>\n      <tr>\n        <td id=\"L11506\" class=\"blob-num js-line-number\" data-line-number=\"11506\"></td>\n        <td id=\"LC11506\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11507\" class=\"blob-num js-line-number\" data-line-number=\"11507\"></td>\n        <td id=\"LC11507\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../utility/identity<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">130</span>}],<span class=\"pl-c1\">103</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11508\" class=\"blob-num js-line-number\" data-line-number=\"11508\"></td>\n        <td id=\"LC11508\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> bindCallback <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./bindCallback<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11509\" class=\"blob-num js-line-number\" data-line-number=\"11509\"></td>\n        <td id=\"LC11509\" class=\"blob-code blob-code-inner js-file-line\">    isIterateeCall <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isIterateeCall<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11510\" class=\"blob-num js-line-number\" data-line-number=\"11510\"></td>\n        <td id=\"LC11510\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11511\" class=\"blob-num js-line-number\" data-line-number=\"11511\"></td>\n        <td id=\"LC11511\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11512\" class=\"blob-num js-line-number\" data-line-number=\"11512\"></td>\n        <td id=\"LC11512\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">createAssigner</span>(<span class=\"pl-smi\">assigner</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11513\" class=\"blob-num js-line-number\" data-line-number=\"11513\"></td>\n        <td id=\"LC11513\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">function</span>() {</td>\n      </tr>\n      <tr>\n        <td id=\"L11514\" class=\"blob-num js-line-number\" data-line-number=\"11514\"></td>\n        <td id=\"LC11514\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> args <span class=\"pl-k\">=</span> <span class=\"pl-v\">arguments</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11515\" class=\"blob-num js-line-number\" data-line-number=\"11515\"></td>\n        <td id=\"LC11515\" class=\"blob-code blob-code-inner js-file-line\">        length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">args</span>.<span class=\"pl-c1\">length</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11516\" class=\"blob-num js-line-number\" data-line-number=\"11516\"></td>\n        <td id=\"LC11516\" class=\"blob-code blob-code-inner js-file-line\">        object <span class=\"pl-k\">=</span> args[<span class=\"pl-c1\">0</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L11517\" class=\"blob-num js-line-number\" data-line-number=\"11517\"></td>\n        <td id=\"LC11517\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11518\" class=\"blob-num js-line-number\" data-line-number=\"11518\"></td>\n        <td id=\"LC11518\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (length <span class=\"pl-k\">&lt;</span> <span class=\"pl-c1\">2</span> <span class=\"pl-k\">||</span> object <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11519\" class=\"blob-num js-line-number\" data-line-number=\"11519\"></td>\n        <td id=\"LC11519\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> object;</td>\n      </tr>\n      <tr>\n        <td id=\"L11520\" class=\"blob-num js-line-number\" data-line-number=\"11520\"></td>\n        <td id=\"LC11520\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11521\" class=\"blob-num js-line-number\" data-line-number=\"11521\"></td>\n        <td id=\"LC11521\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> customizer <span class=\"pl-k\">=</span> args[length <span class=\"pl-k\">-</span> <span class=\"pl-c1\">2</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L11522\" class=\"blob-num js-line-number\" data-line-number=\"11522\"></td>\n        <td id=\"LC11522\" class=\"blob-code blob-code-inner js-file-line\">        thisArg <span class=\"pl-k\">=</span> args[length <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>],</td>\n      </tr>\n      <tr>\n        <td id=\"L11523\" class=\"blob-num js-line-number\" data-line-number=\"11523\"></td>\n        <td id=\"LC11523\" class=\"blob-code blob-code-inner js-file-line\">        guard <span class=\"pl-k\">=</span> args[<span class=\"pl-c1\">3</span>];</td>\n      </tr>\n      <tr>\n        <td id=\"L11524\" class=\"blob-num js-line-number\" data-line-number=\"11524\"></td>\n        <td id=\"LC11524\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11525\" class=\"blob-num js-line-number\" data-line-number=\"11525\"></td>\n        <td id=\"LC11525\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (length <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> customizer <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11526\" class=\"blob-num js-line-number\" data-line-number=\"11526\"></td>\n        <td id=\"LC11526\" class=\"blob-code blob-code-inner js-file-line\">      customizer <span class=\"pl-k\">=</span> <span class=\"pl-en\">bindCallback</span>(customizer, thisArg, <span class=\"pl-c1\">5</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11527\" class=\"blob-num js-line-number\" data-line-number=\"11527\"></td>\n        <td id=\"LC11527\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">-=</span> <span class=\"pl-c1\">2</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11528\" class=\"blob-num js-line-number\" data-line-number=\"11528\"></td>\n        <td id=\"LC11528\" class=\"blob-code blob-code-inner js-file-line\">    } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L11529\" class=\"blob-num js-line-number\" data-line-number=\"11529\"></td>\n        <td id=\"LC11529\" class=\"blob-code blob-code-inner js-file-line\">      customizer <span class=\"pl-k\">=</span> (length <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">2</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> thisArg <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">?</span> thisArg <span class=\"pl-k\">:</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11530\" class=\"blob-num js-line-number\" data-line-number=\"11530\"></td>\n        <td id=\"LC11530\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">-=</span> (customizer <span class=\"pl-k\">?</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">0</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11531\" class=\"blob-num js-line-number\" data-line-number=\"11531\"></td>\n        <td id=\"LC11531\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11532\" class=\"blob-num js-line-number\" data-line-number=\"11532\"></td>\n        <td id=\"LC11532\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (guard <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isIterateeCall</span>(args[<span class=\"pl-c1\">1</span>], args[<span class=\"pl-c1\">2</span>], guard)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11533\" class=\"blob-num js-line-number\" data-line-number=\"11533\"></td>\n        <td id=\"LC11533\" class=\"blob-code blob-code-inner js-file-line\">      customizer <span class=\"pl-k\">=</span> length <span class=\"pl-k\">==</span> <span class=\"pl-c1\">3</span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">:</span> customizer;</td>\n      </tr>\n      <tr>\n        <td id=\"L11534\" class=\"blob-num js-line-number\" data-line-number=\"11534\"></td>\n        <td id=\"LC11534\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">=</span> <span class=\"pl-c1\">2</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11535\" class=\"blob-num js-line-number\" data-line-number=\"11535\"></td>\n        <td id=\"LC11535\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11536\" class=\"blob-num js-line-number\" data-line-number=\"11536\"></td>\n        <td id=\"LC11536\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> index <span class=\"pl-k\">=</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11537\" class=\"blob-num js-line-number\" data-line-number=\"11537\"></td>\n        <td id=\"LC11537\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">while</span> (<span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11538\" class=\"blob-num js-line-number\" data-line-number=\"11538\"></td>\n        <td id=\"LC11538\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> source <span class=\"pl-k\">=</span> args[index];</td>\n      </tr>\n      <tr>\n        <td id=\"L11539\" class=\"blob-num js-line-number\" data-line-number=\"11539\"></td>\n        <td id=\"LC11539\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (source) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11540\" class=\"blob-num js-line-number\" data-line-number=\"11540\"></td>\n        <td id=\"LC11540\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-en\">assigner</span>(object, source, customizer);</td>\n      </tr>\n      <tr>\n        <td id=\"L11541\" class=\"blob-num js-line-number\" data-line-number=\"11541\"></td>\n        <td id=\"LC11541\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L11542\" class=\"blob-num js-line-number\" data-line-number=\"11542\"></td>\n        <td id=\"LC11542\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11543\" class=\"blob-num js-line-number\" data-line-number=\"11543\"></td>\n        <td id=\"LC11543\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> object;</td>\n      </tr>\n      <tr>\n        <td id=\"L11544\" class=\"blob-num js-line-number\" data-line-number=\"11544\"></td>\n        <td id=\"LC11544\" class=\"blob-code blob-code-inner js-file-line\">  };</td>\n      </tr>\n      <tr>\n        <td id=\"L11545\" class=\"blob-num js-line-number\" data-line-number=\"11545\"></td>\n        <td id=\"LC11545\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11546\" class=\"blob-num js-line-number\" data-line-number=\"11546\"></td>\n        <td id=\"LC11546\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11547\" class=\"blob-num js-line-number\" data-line-number=\"11547\"></td>\n        <td id=\"LC11547\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> createAssigner;</td>\n      </tr>\n      <tr>\n        <td id=\"L11548\" class=\"blob-num js-line-number\" data-line-number=\"11548\"></td>\n        <td id=\"LC11548\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11549\" class=\"blob-num js-line-number\" data-line-number=\"11549\"></td>\n        <td id=\"LC11549\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./bindCallback<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">102</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isIterateeCall<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">109</span>}],<span class=\"pl-c1\">104</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11550\" class=\"blob-num js-line-number\" data-line-number=\"11550\"></td>\n        <td id=\"LC11550\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11551\" class=\"blob-num js-line-number\" data-line-number=\"11551\"></td>\n        <td id=\"LC11551\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">equalArrays</span>(<span class=\"pl-smi\">array</span>, <span class=\"pl-smi\">other</span>, <span class=\"pl-smi\">equalFunc</span>, <span class=\"pl-smi\">customizer</span>, <span class=\"pl-smi\">isWhere</span>, <span class=\"pl-smi\">stackA</span>, <span class=\"pl-smi\">stackB</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11552\" class=\"blob-num js-line-number\" data-line-number=\"11552\"></td>\n        <td id=\"LC11552\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> index <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11553\" class=\"blob-num js-line-number\" data-line-number=\"11553\"></td>\n        <td id=\"LC11553\" class=\"blob-code blob-code-inner js-file-line\">      arrLength <span class=\"pl-k\">=</span> <span class=\"pl-smi\">array</span>.<span class=\"pl-c1\">length</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11554\" class=\"blob-num js-line-number\" data-line-number=\"11554\"></td>\n        <td id=\"LC11554\" class=\"blob-code blob-code-inner js-file-line\">      othLength <span class=\"pl-k\">=</span> <span class=\"pl-smi\">other</span>.<span class=\"pl-c1\">length</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11555\" class=\"blob-num js-line-number\" data-line-number=\"11555\"></td>\n        <td id=\"LC11555\" class=\"blob-code blob-code-inner js-file-line\">      result <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11556\" class=\"blob-num js-line-number\" data-line-number=\"11556\"></td>\n        <td id=\"LC11556\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11557\" class=\"blob-num js-line-number\" data-line-number=\"11557\"></td>\n        <td id=\"LC11557\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (arrLength <span class=\"pl-k\">!=</span> othLength <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>(isWhere <span class=\"pl-k\">&amp;&amp;</span> othLength <span class=\"pl-k\">&gt;</span> arrLength)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11558\" class=\"blob-num js-line-number\" data-line-number=\"11558\"></td>\n        <td id=\"LC11558\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11559\" class=\"blob-num js-line-number\" data-line-number=\"11559\"></td>\n        <td id=\"LC11559\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11560\" class=\"blob-num js-line-number\" data-line-number=\"11560\"></td>\n        <td id=\"LC11560\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (result <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> arrLength) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11561\" class=\"blob-num js-line-number\" data-line-number=\"11561\"></td>\n        <td id=\"LC11561\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> arrValue <span class=\"pl-k\">=</span> array[index],</td>\n      </tr>\n      <tr>\n        <td id=\"L11562\" class=\"blob-num js-line-number\" data-line-number=\"11562\"></td>\n        <td id=\"LC11562\" class=\"blob-code blob-code-inner js-file-line\">        othValue <span class=\"pl-k\">=</span> other[index];</td>\n      </tr>\n      <tr>\n        <td id=\"L11563\" class=\"blob-num js-line-number\" data-line-number=\"11563\"></td>\n        <td id=\"LC11563\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11564\" class=\"blob-num js-line-number\" data-line-number=\"11564\"></td>\n        <td id=\"LC11564\" class=\"blob-code blob-code-inner js-file-line\">    result <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11565\" class=\"blob-num js-line-number\" data-line-number=\"11565\"></td>\n        <td id=\"LC11565\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (customizer) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11566\" class=\"blob-num js-line-number\" data-line-number=\"11566\"></td>\n        <td id=\"LC11566\" class=\"blob-code blob-code-inner js-file-line\">      result <span class=\"pl-k\">=</span> isWhere</td>\n      </tr>\n      <tr>\n        <td id=\"L11567\" class=\"blob-num js-line-number\" data-line-number=\"11567\"></td>\n        <td id=\"LC11567\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">?</span> <span class=\"pl-en\">customizer</span>(othValue, arrValue, index)</td>\n      </tr>\n      <tr>\n        <td id=\"L11568\" class=\"blob-num js-line-number\" data-line-number=\"11568\"></td>\n        <td id=\"LC11568\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">:</span> <span class=\"pl-en\">customizer</span>(arrValue, othValue, index);</td>\n      </tr>\n      <tr>\n        <td id=\"L11569\" class=\"blob-num js-line-number\" data-line-number=\"11569\"></td>\n        <td id=\"LC11569\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11570\" class=\"blob-num js-line-number\" data-line-number=\"11570\"></td>\n        <td id=\"LC11570\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> result <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11571\" class=\"blob-num js-line-number\" data-line-number=\"11571\"></td>\n        <td id=\"LC11571\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (isWhere) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11572\" class=\"blob-num js-line-number\" data-line-number=\"11572\"></td>\n        <td id=\"LC11572\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">var</span> othIndex <span class=\"pl-k\">=</span> othLength;</td>\n      </tr>\n      <tr>\n        <td id=\"L11573\" class=\"blob-num js-line-number\" data-line-number=\"11573\"></td>\n        <td id=\"LC11573\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">while</span> (othIndex<span class=\"pl-k\">--</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11574\" class=\"blob-num js-line-number\" data-line-number=\"11574\"></td>\n        <td id=\"LC11574\" class=\"blob-code blob-code-inner js-file-line\">          othValue <span class=\"pl-k\">=</span> other[othIndex];</td>\n      </tr>\n      <tr>\n        <td id=\"L11575\" class=\"blob-num js-line-number\" data-line-number=\"11575\"></td>\n        <td id=\"LC11575\" class=\"blob-code blob-code-inner js-file-line\">          result <span class=\"pl-k\">=</span> (arrValue <span class=\"pl-k\">&amp;&amp;</span> arrValue <span class=\"pl-k\">===</span> othValue) <span class=\"pl-k\">||</span> <span class=\"pl-en\">equalFunc</span>(arrValue, othValue, customizer, isWhere, stackA, stackB);</td>\n      </tr>\n      <tr>\n        <td id=\"L11576\" class=\"blob-num js-line-number\" data-line-number=\"11576\"></td>\n        <td id=\"LC11576\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">if</span> (result) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11577\" class=\"blob-num js-line-number\" data-line-number=\"11577\"></td>\n        <td id=\"LC11577\" class=\"blob-code blob-code-inner js-file-line\">            <span class=\"pl-k\">break</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11578\" class=\"blob-num js-line-number\" data-line-number=\"11578\"></td>\n        <td id=\"LC11578\" class=\"blob-code blob-code-inner js-file-line\">          }</td>\n      </tr>\n      <tr>\n        <td id=\"L11579\" class=\"blob-num js-line-number\" data-line-number=\"11579\"></td>\n        <td id=\"LC11579\" class=\"blob-code blob-code-inner js-file-line\">        }</td>\n      </tr>\n      <tr>\n        <td id=\"L11580\" class=\"blob-num js-line-number\" data-line-number=\"11580\"></td>\n        <td id=\"LC11580\" class=\"blob-code blob-code-inner js-file-line\">      } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L11581\" class=\"blob-num js-line-number\" data-line-number=\"11581\"></td>\n        <td id=\"LC11581\" class=\"blob-code blob-code-inner js-file-line\">        result <span class=\"pl-k\">=</span> (arrValue <span class=\"pl-k\">&amp;&amp;</span> arrValue <span class=\"pl-k\">===</span> othValue) <span class=\"pl-k\">||</span> <span class=\"pl-en\">equalFunc</span>(arrValue, othValue, customizer, isWhere, stackA, stackB);</td>\n      </tr>\n      <tr>\n        <td id=\"L11582\" class=\"blob-num js-line-number\" data-line-number=\"11582\"></td>\n        <td id=\"LC11582\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L11583\" class=\"blob-num js-line-number\" data-line-number=\"11583\"></td>\n        <td id=\"LC11583\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11584\" class=\"blob-num js-line-number\" data-line-number=\"11584\"></td>\n        <td id=\"LC11584\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11585\" class=\"blob-num js-line-number\" data-line-number=\"11585\"></td>\n        <td id=\"LC11585\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">!!</span>result;</td>\n      </tr>\n      <tr>\n        <td id=\"L11586\" class=\"blob-num js-line-number\" data-line-number=\"11586\"></td>\n        <td id=\"LC11586\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11587\" class=\"blob-num js-line-number\" data-line-number=\"11587\"></td>\n        <td id=\"LC11587\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11588\" class=\"blob-num js-line-number\" data-line-number=\"11588\"></td>\n        <td id=\"LC11588\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> equalArrays;</td>\n      </tr>\n      <tr>\n        <td id=\"L11589\" class=\"blob-num js-line-number\" data-line-number=\"11589\"></td>\n        <td id=\"LC11589\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11590\" class=\"blob-num js-line-number\" data-line-number=\"11590\"></td>\n        <td id=\"LC11590\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">105</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11591\" class=\"blob-num js-line-number\" data-line-number=\"11591\"></td>\n        <td id=\"LC11591\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11592\" class=\"blob-num js-line-number\" data-line-number=\"11592\"></td>\n        <td id=\"LC11592\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> boolTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Boolean]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11593\" class=\"blob-num js-line-number\" data-line-number=\"11593\"></td>\n        <td id=\"LC11593\" class=\"blob-code blob-code-inner js-file-line\">    dateTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Date]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11594\" class=\"blob-num js-line-number\" data-line-number=\"11594\"></td>\n        <td id=\"LC11594\" class=\"blob-code blob-code-inner js-file-line\">    errorTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Error]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11595\" class=\"blob-num js-line-number\" data-line-number=\"11595\"></td>\n        <td id=\"LC11595\" class=\"blob-code blob-code-inner js-file-line\">    numberTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Number]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11596\" class=\"blob-num js-line-number\" data-line-number=\"11596\"></td>\n        <td id=\"LC11596\" class=\"blob-code blob-code-inner js-file-line\">    regexpTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object RegExp]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11597\" class=\"blob-num js-line-number\" data-line-number=\"11597\"></td>\n        <td id=\"LC11597\" class=\"blob-code blob-code-inner js-file-line\">    stringTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object String]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11598\" class=\"blob-num js-line-number\" data-line-number=\"11598\"></td>\n        <td id=\"LC11598\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11599\" class=\"blob-num js-line-number\" data-line-number=\"11599\"></td>\n        <td id=\"LC11599\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11600\" class=\"blob-num js-line-number\" data-line-number=\"11600\"></td>\n        <td id=\"LC11600\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">equalByTag</span>(<span class=\"pl-smi\">object</span>, <span class=\"pl-smi\">other</span>, <span class=\"pl-smi\">tag</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11601\" class=\"blob-num js-line-number\" data-line-number=\"11601\"></td>\n        <td id=\"LC11601\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">switch</span> (tag) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11602\" class=\"blob-num js-line-number\" data-line-number=\"11602\"></td>\n        <td id=\"LC11602\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> boolTag<span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11603\" class=\"blob-num js-line-number\" data-line-number=\"11603\"></td>\n        <td id=\"LC11603\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> dateTag<span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11604\" class=\"blob-num js-line-number\" data-line-number=\"11604\"></td>\n        <td id=\"LC11604\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-k\">+</span>object <span class=\"pl-k\">==</span> <span class=\"pl-k\">+</span>other;</td>\n      </tr>\n      <tr>\n        <td id=\"L11605\" class=\"blob-num js-line-number\" data-line-number=\"11605\"></td>\n        <td id=\"LC11605\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11606\" class=\"blob-num js-line-number\" data-line-number=\"11606\"></td>\n        <td id=\"LC11606\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> errorTag<span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11607\" class=\"blob-num js-line-number\" data-line-number=\"11607\"></td>\n        <td id=\"LC11607\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-smi\">object</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">==</span> <span class=\"pl-smi\">other</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">object</span>.<span class=\"pl-smi\">message</span> <span class=\"pl-k\">==</span> <span class=\"pl-smi\">other</span>.<span class=\"pl-smi\">message</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11608\" class=\"blob-num js-line-number\" data-line-number=\"11608\"></td>\n        <td id=\"LC11608\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11609\" class=\"blob-num js-line-number\" data-line-number=\"11609\"></td>\n        <td id=\"LC11609\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> numberTag<span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11610\" class=\"blob-num js-line-number\" data-line-number=\"11610\"></td>\n        <td id=\"LC11610\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> (object <span class=\"pl-k\">!=</span> <span class=\"pl-k\">+</span>object)</td>\n      </tr>\n      <tr>\n        <td id=\"L11611\" class=\"blob-num js-line-number\" data-line-number=\"11611\"></td>\n        <td id=\"LC11611\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">?</span> other <span class=\"pl-k\">!=</span> <span class=\"pl-k\">+</span>other</td>\n      </tr>\n      <tr>\n        <td id=\"L11612\" class=\"blob-num js-line-number\" data-line-number=\"11612\"></td>\n        <td id=\"LC11612\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">:</span> (object <span class=\"pl-k\">==</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">?</span> ((<span class=\"pl-c1\">1</span> <span class=\"pl-k\">/</span> object) <span class=\"pl-k\">==</span> (<span class=\"pl-c1\">1</span> <span class=\"pl-k\">/</span> other)) <span class=\"pl-k\">:</span> object <span class=\"pl-k\">==</span> <span class=\"pl-k\">+</span>other);</td>\n      </tr>\n      <tr>\n        <td id=\"L11613\" class=\"blob-num js-line-number\" data-line-number=\"11613\"></td>\n        <td id=\"LC11613\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11614\" class=\"blob-num js-line-number\" data-line-number=\"11614\"></td>\n        <td id=\"LC11614\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> regexpTag<span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11615\" class=\"blob-num js-line-number\" data-line-number=\"11615\"></td>\n        <td id=\"LC11615\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">case</span> stringTag<span class=\"pl-k\">:</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11616\" class=\"blob-num js-line-number\" data-line-number=\"11616\"></td>\n        <td id=\"LC11616\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> object <span class=\"pl-k\">==</span> (other <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11617\" class=\"blob-num js-line-number\" data-line-number=\"11617\"></td>\n        <td id=\"LC11617\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11618\" class=\"blob-num js-line-number\" data-line-number=\"11618\"></td>\n        <td id=\"LC11618\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11619\" class=\"blob-num js-line-number\" data-line-number=\"11619\"></td>\n        <td id=\"LC11619\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11620\" class=\"blob-num js-line-number\" data-line-number=\"11620\"></td>\n        <td id=\"LC11620\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11621\" class=\"blob-num js-line-number\" data-line-number=\"11621\"></td>\n        <td id=\"LC11621\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> equalByTag;</td>\n      </tr>\n      <tr>\n        <td id=\"L11622\" class=\"blob-num js-line-number\" data-line-number=\"11622\"></td>\n        <td id=\"LC11622\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11623\" class=\"blob-num js-line-number\" data-line-number=\"11623\"></td>\n        <td id=\"LC11623\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">106</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11624\" class=\"blob-num js-line-number\" data-line-number=\"11624\"></td>\n        <td id=\"LC11624\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> keys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../object/keys<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11625\" class=\"blob-num js-line-number\" data-line-number=\"11625\"></td>\n        <td id=\"LC11625\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11626\" class=\"blob-num js-line-number\" data-line-number=\"11626\"></td>\n        <td id=\"LC11626\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11627\" class=\"blob-num js-line-number\" data-line-number=\"11627\"></td>\n        <td id=\"LC11627\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11628\" class=\"blob-num js-line-number\" data-line-number=\"11628\"></td>\n        <td id=\"LC11628\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11629\" class=\"blob-num js-line-number\" data-line-number=\"11629\"></td>\n        <td id=\"LC11629\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11630\" class=\"blob-num js-line-number\" data-line-number=\"11630\"></td>\n        <td id=\"LC11630\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> hasOwnProperty <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11631\" class=\"blob-num js-line-number\" data-line-number=\"11631\"></td>\n        <td id=\"LC11631\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11632\" class=\"blob-num js-line-number\" data-line-number=\"11632\"></td>\n        <td id=\"LC11632\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11633\" class=\"blob-num js-line-number\" data-line-number=\"11633\"></td>\n        <td id=\"LC11633\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">equalObjects</span>(<span class=\"pl-smi\">object</span>, <span class=\"pl-smi\">other</span>, <span class=\"pl-smi\">equalFunc</span>, <span class=\"pl-smi\">customizer</span>, <span class=\"pl-smi\">isWhere</span>, <span class=\"pl-smi\">stackA</span>, <span class=\"pl-smi\">stackB</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11634\" class=\"blob-num js-line-number\" data-line-number=\"11634\"></td>\n        <td id=\"LC11634\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> objProps <span class=\"pl-k\">=</span> <span class=\"pl-en\">keys</span>(object),</td>\n      </tr>\n      <tr>\n        <td id=\"L11635\" class=\"blob-num js-line-number\" data-line-number=\"11635\"></td>\n        <td id=\"LC11635\" class=\"blob-code blob-code-inner js-file-line\">      objLength <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objProps</span>.<span class=\"pl-c1\">length</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11636\" class=\"blob-num js-line-number\" data-line-number=\"11636\"></td>\n        <td id=\"LC11636\" class=\"blob-code blob-code-inner js-file-line\">      othProps <span class=\"pl-k\">=</span> <span class=\"pl-en\">keys</span>(other),</td>\n      </tr>\n      <tr>\n        <td id=\"L11637\" class=\"blob-num js-line-number\" data-line-number=\"11637\"></td>\n        <td id=\"LC11637\" class=\"blob-code blob-code-inner js-file-line\">      othLength <span class=\"pl-k\">=</span> <span class=\"pl-smi\">othProps</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11638\" class=\"blob-num js-line-number\" data-line-number=\"11638\"></td>\n        <td id=\"LC11638\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11639\" class=\"blob-num js-line-number\" data-line-number=\"11639\"></td>\n        <td id=\"LC11639\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (objLength <span class=\"pl-k\">!=</span> othLength <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span>isWhere) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11640\" class=\"blob-num js-line-number\" data-line-number=\"11640\"></td>\n        <td id=\"LC11640\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11641\" class=\"blob-num js-line-number\" data-line-number=\"11641\"></td>\n        <td id=\"LC11641\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11642\" class=\"blob-num js-line-number\" data-line-number=\"11642\"></td>\n        <td id=\"LC11642\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> hasCtor,</td>\n      </tr>\n      <tr>\n        <td id=\"L11643\" class=\"blob-num js-line-number\" data-line-number=\"11643\"></td>\n        <td id=\"LC11643\" class=\"blob-code blob-code-inner js-file-line\">      index <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11644\" class=\"blob-num js-line-number\" data-line-number=\"11644\"></td>\n        <td id=\"LC11644\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11645\" class=\"blob-num js-line-number\" data-line-number=\"11645\"></td>\n        <td id=\"LC11645\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (<span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> objLength) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11646\" class=\"blob-num js-line-number\" data-line-number=\"11646\"></td>\n        <td id=\"LC11646\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> objProps[index],</td>\n      </tr>\n      <tr>\n        <td id=\"L11647\" class=\"blob-num js-line-number\" data-line-number=\"11647\"></td>\n        <td id=\"LC11647\" class=\"blob-code blob-code-inner js-file-line\">        result <span class=\"pl-k\">=</span> <span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(other, key);</td>\n      </tr>\n      <tr>\n        <td id=\"L11648\" class=\"blob-num js-line-number\" data-line-number=\"11648\"></td>\n        <td id=\"LC11648\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11649\" class=\"blob-num js-line-number\" data-line-number=\"11649\"></td>\n        <td id=\"LC11649\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (result) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11650\" class=\"blob-num js-line-number\" data-line-number=\"11650\"></td>\n        <td id=\"LC11650\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">var</span> objValue <span class=\"pl-k\">=</span> object[key],</td>\n      </tr>\n      <tr>\n        <td id=\"L11651\" class=\"blob-num js-line-number\" data-line-number=\"11651\"></td>\n        <td id=\"LC11651\" class=\"blob-code blob-code-inner js-file-line\">          othValue <span class=\"pl-k\">=</span> other[key];</td>\n      </tr>\n      <tr>\n        <td id=\"L11652\" class=\"blob-num js-line-number\" data-line-number=\"11652\"></td>\n        <td id=\"LC11652\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11653\" class=\"blob-num js-line-number\" data-line-number=\"11653\"></td>\n        <td id=\"LC11653\" class=\"blob-code blob-code-inner js-file-line\">      result <span class=\"pl-k\">=</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11654\" class=\"blob-num js-line-number\" data-line-number=\"11654\"></td>\n        <td id=\"LC11654\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (customizer) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11655\" class=\"blob-num js-line-number\" data-line-number=\"11655\"></td>\n        <td id=\"LC11655\" class=\"blob-code blob-code-inner js-file-line\">        result <span class=\"pl-k\">=</span> isWhere</td>\n      </tr>\n      <tr>\n        <td id=\"L11656\" class=\"blob-num js-line-number\" data-line-number=\"11656\"></td>\n        <td id=\"LC11656\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">?</span> <span class=\"pl-en\">customizer</span>(othValue, objValue, key)</td>\n      </tr>\n      <tr>\n        <td id=\"L11657\" class=\"blob-num js-line-number\" data-line-number=\"11657\"></td>\n        <td id=\"LC11657\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">:</span> <span class=\"pl-en\">customizer</span>(objValue, othValue, key);</td>\n      </tr>\n      <tr>\n        <td id=\"L11658\" class=\"blob-num js-line-number\" data-line-number=\"11658\"></td>\n        <td id=\"LC11658\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L11659\" class=\"blob-num js-line-number\" data-line-number=\"11659\"></td>\n        <td id=\"LC11659\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">if</span> (<span class=\"pl-k\">typeof</span> result <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>undefined<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11660\" class=\"blob-num js-line-number\" data-line-number=\"11660\"></td>\n        <td id=\"LC11660\" class=\"blob-code blob-code-inner js-file-line\">        result <span class=\"pl-k\">=</span> (objValue <span class=\"pl-k\">&amp;&amp;</span> objValue <span class=\"pl-k\">===</span> othValue) <span class=\"pl-k\">||</span> <span class=\"pl-en\">equalFunc</span>(objValue, othValue, customizer, isWhere, stackA, stackB);</td>\n      </tr>\n      <tr>\n        <td id=\"L11661\" class=\"blob-num js-line-number\" data-line-number=\"11661\"></td>\n        <td id=\"LC11661\" class=\"blob-code blob-code-inner js-file-line\">      }</td>\n      </tr>\n      <tr>\n        <td id=\"L11662\" class=\"blob-num js-line-number\" data-line-number=\"11662\"></td>\n        <td id=\"LC11662\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11663\" class=\"blob-num js-line-number\" data-line-number=\"11663\"></td>\n        <td id=\"LC11663\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>result) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11664\" class=\"blob-num js-line-number\" data-line-number=\"11664\"></td>\n        <td id=\"LC11664\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11665\" class=\"blob-num js-line-number\" data-line-number=\"11665\"></td>\n        <td id=\"LC11665\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11666\" class=\"blob-num js-line-number\" data-line-number=\"11666\"></td>\n        <td id=\"LC11666\" class=\"blob-code blob-code-inner js-file-line\">    hasCtor <span class=\"pl-k\">||</span> (hasCtor <span class=\"pl-k\">=</span> key <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>constructor<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11667\" class=\"blob-num js-line-number\" data-line-number=\"11667\"></td>\n        <td id=\"LC11667\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11668\" class=\"blob-num js-line-number\" data-line-number=\"11668\"></td>\n        <td id=\"LC11668\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>hasCtor) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11669\" class=\"blob-num js-line-number\" data-line-number=\"11669\"></td>\n        <td id=\"LC11669\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> objCtor <span class=\"pl-k\">=</span> <span class=\"pl-smi\">object</span>.<span class=\"pl-c1\">constructor</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11670\" class=\"blob-num js-line-number\" data-line-number=\"11670\"></td>\n        <td id=\"LC11670\" class=\"blob-code blob-code-inner js-file-line\">        othCtor <span class=\"pl-k\">=</span> <span class=\"pl-smi\">other</span>.<span class=\"pl-c1\">constructor</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11671\" class=\"blob-num js-line-number\" data-line-number=\"11671\"></td>\n        <td id=\"LC11671\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11672\" class=\"blob-num js-line-number\" data-line-number=\"11672\"></td>\n        <td id=\"LC11672\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (objCtor <span class=\"pl-k\">!=</span> othCtor <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11673\" class=\"blob-num js-line-number\" data-line-number=\"11673\"></td>\n        <td id=\"LC11673\" class=\"blob-code blob-code-inner js-file-line\">        (<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>constructor<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">in</span> object <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>constructor<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">in</span> other) <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11674\" class=\"blob-num js-line-number\" data-line-number=\"11674\"></td>\n        <td id=\"LC11674\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">!</span>(<span class=\"pl-k\">typeof</span> objCtor <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> objCtor <span class=\"pl-k\">instanceof</span> objCtor <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11675\" class=\"blob-num js-line-number\" data-line-number=\"11675\"></td>\n        <td id=\"LC11675\" class=\"blob-code blob-code-inner js-file-line\">          <span class=\"pl-k\">typeof</span> othCtor <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> othCtor <span class=\"pl-k\">instanceof</span> othCtor)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11676\" class=\"blob-num js-line-number\" data-line-number=\"11676\"></td>\n        <td id=\"LC11676\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11677\" class=\"blob-num js-line-number\" data-line-number=\"11677\"></td>\n        <td id=\"LC11677\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11678\" class=\"blob-num js-line-number\" data-line-number=\"11678\"></td>\n        <td id=\"LC11678\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11679\" class=\"blob-num js-line-number\" data-line-number=\"11679\"></td>\n        <td id=\"LC11679\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11680\" class=\"blob-num js-line-number\" data-line-number=\"11680\"></td>\n        <td id=\"LC11680\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11681\" class=\"blob-num js-line-number\" data-line-number=\"11681\"></td>\n        <td id=\"LC11681\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11682\" class=\"blob-num js-line-number\" data-line-number=\"11682\"></td>\n        <td id=\"LC11682\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> equalObjects;</td>\n      </tr>\n      <tr>\n        <td id=\"L11683\" class=\"blob-num js-line-number\" data-line-number=\"11683\"></td>\n        <td id=\"LC11683\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11684\" class=\"blob-num js-line-number\" data-line-number=\"11684\"></td>\n        <td id=\"LC11684\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../object/keys<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">126</span>}],<span class=\"pl-c1\">107</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11685\" class=\"blob-num js-line-number\" data-line-number=\"11685\"></td>\n        <td id=\"LC11685\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseSetData <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./baseSetData<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11686\" class=\"blob-num js-line-number\" data-line-number=\"11686\"></td>\n        <td id=\"LC11686\" class=\"blob-code blob-code-inner js-file-line\">    isNative <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isNative<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11687\" class=\"blob-num js-line-number\" data-line-number=\"11687\"></td>\n        <td id=\"LC11687\" class=\"blob-code blob-code-inner js-file-line\">    support <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../support<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11688\" class=\"blob-num js-line-number\" data-line-number=\"11688\"></td>\n        <td id=\"LC11688\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11689\" class=\"blob-num js-line-number\" data-line-number=\"11689\"></td>\n        <td id=\"LC11689\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11690\" class=\"blob-num js-line-number\" data-line-number=\"11690\"></td>\n        <td id=\"LC11690\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> reFuncName <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-c1\">\\s</span><span class=\"pl-k\">*</span>function<span class=\"pl-c1\">[ <span class=\"pl-cce\">\\n\\r\\t</span>]</span><span class=\"pl-k\">+</span><span class=\"pl-c1\">\\w</span><span class=\"pl-pds\">/</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11691\" class=\"blob-num js-line-number\" data-line-number=\"11691\"></td>\n        <td id=\"LC11691\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11692\" class=\"blob-num js-line-number\" data-line-number=\"11692\"></td>\n        <td id=\"LC11692\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11693\" class=\"blob-num js-line-number\" data-line-number=\"11693\"></td>\n        <td id=\"LC11693\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> reThis <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-k\">\\b</span>this<span class=\"pl-k\">\\b</span><span class=\"pl-pds\">/</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11694\" class=\"blob-num js-line-number\" data-line-number=\"11694\"></td>\n        <td id=\"LC11694\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11695\" class=\"blob-num js-line-number\" data-line-number=\"11695\"></td>\n        <td id=\"LC11695\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11696\" class=\"blob-num js-line-number\" data-line-number=\"11696\"></td>\n        <td id=\"LC11696\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> fnToString <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Function</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11697\" class=\"blob-num js-line-number\" data-line-number=\"11697\"></td>\n        <td id=\"LC11697\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11698\" class=\"blob-num js-line-number\" data-line-number=\"11698\"></td>\n        <td id=\"LC11698\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11699\" class=\"blob-num js-line-number\" data-line-number=\"11699\"></td>\n        <td id=\"LC11699\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isBindable</span>(<span class=\"pl-smi\">func</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11700\" class=\"blob-num js-line-number\" data-line-number=\"11700\"></td>\n        <td id=\"LC11700\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-k\">!</span>(<span class=\"pl-smi\">support</span>.<span class=\"pl-smi\">funcNames</span> <span class=\"pl-k\">?</span> <span class=\"pl-smi\">func</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">:</span> <span class=\"pl-smi\">support</span>.<span class=\"pl-smi\">funcDecomp</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11701\" class=\"blob-num js-line-number\" data-line-number=\"11701\"></td>\n        <td id=\"LC11701\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11702\" class=\"blob-num js-line-number\" data-line-number=\"11702\"></td>\n        <td id=\"LC11702\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>result) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11703\" class=\"blob-num js-line-number\" data-line-number=\"11703\"></td>\n        <td id=\"LC11703\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> source <span class=\"pl-k\">=</span> <span class=\"pl-smi\">fnToString</span>.<span class=\"pl-c1\">call</span>(func);</td>\n      </tr>\n      <tr>\n        <td id=\"L11704\" class=\"blob-num js-line-number\" data-line-number=\"11704\"></td>\n        <td id=\"LC11704\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-smi\">support</span>.<span class=\"pl-smi\">funcNames</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11705\" class=\"blob-num js-line-number\" data-line-number=\"11705\"></td>\n        <td id=\"LC11705\" class=\"blob-code blob-code-inner js-file-line\">      result <span class=\"pl-k\">=</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">reFuncName</span>.<span class=\"pl-c1\">test</span>(source);</td>\n      </tr>\n      <tr>\n        <td id=\"L11706\" class=\"blob-num js-line-number\" data-line-number=\"11706\"></td>\n        <td id=\"LC11706\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11707\" class=\"blob-num js-line-number\" data-line-number=\"11707\"></td>\n        <td id=\"LC11707\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>result) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11708\" class=\"blob-num js-line-number\" data-line-number=\"11708\"></td>\n        <td id=\"LC11708\" class=\"blob-code blob-code-inner js-file-line\">      result <span class=\"pl-k\">=</span> <span class=\"pl-smi\">reThis</span>.<span class=\"pl-c1\">test</span>(source) <span class=\"pl-k\">||</span> <span class=\"pl-en\">isNative</span>(func);</td>\n      </tr>\n      <tr>\n        <td id=\"L11709\" class=\"blob-num js-line-number\" data-line-number=\"11709\"></td>\n        <td id=\"LC11709\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-en\">baseSetData</span>(func, result);</td>\n      </tr>\n      <tr>\n        <td id=\"L11710\" class=\"blob-num js-line-number\" data-line-number=\"11710\"></td>\n        <td id=\"LC11710\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11711\" class=\"blob-num js-line-number\" data-line-number=\"11711\"></td>\n        <td id=\"LC11711\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11712\" class=\"blob-num js-line-number\" data-line-number=\"11712\"></td>\n        <td id=\"LC11712\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L11713\" class=\"blob-num js-line-number\" data-line-number=\"11713\"></td>\n        <td id=\"LC11713\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11714\" class=\"blob-num js-line-number\" data-line-number=\"11714\"></td>\n        <td id=\"LC11714\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11715\" class=\"blob-num js-line-number\" data-line-number=\"11715\"></td>\n        <td id=\"LC11715\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isBindable;</td>\n      </tr>\n      <tr>\n        <td id=\"L11716\" class=\"blob-num js-line-number\" data-line-number=\"11716\"></td>\n        <td id=\"LC11716\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11717\" class=\"blob-num js-line-number\" data-line-number=\"11717\"></td>\n        <td id=\"LC11717\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isNative<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">120</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../support<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">129</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./baseSetData<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">100</span>}],<span class=\"pl-c1\">108</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11718\" class=\"blob-num js-line-number\" data-line-number=\"11718\"></td>\n        <td id=\"LC11718\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11719\" class=\"blob-num js-line-number\" data-line-number=\"11719\"></td>\n        <td id=\"LC11719\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">MAX_SAFE_INTEGER</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, <span class=\"pl-c1\">53</span>) <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11720\" class=\"blob-num js-line-number\" data-line-number=\"11720\"></td>\n        <td id=\"LC11720\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11721\" class=\"blob-num js-line-number\" data-line-number=\"11721\"></td>\n        <td id=\"LC11721\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11722\" class=\"blob-num js-line-number\" data-line-number=\"11722\"></td>\n        <td id=\"LC11722\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isIndex</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">length</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11723\" class=\"blob-num js-line-number\" data-line-number=\"11723\"></td>\n        <td id=\"LC11723\" class=\"blob-code blob-code-inner js-file-line\">  value <span class=\"pl-k\">=</span> <span class=\"pl-k\">+</span>value;</td>\n      </tr>\n      <tr>\n        <td id=\"L11724\" class=\"blob-num js-line-number\" data-line-number=\"11724\"></td>\n        <td id=\"LC11724\" class=\"blob-code blob-code-inner js-file-line\">  length <span class=\"pl-k\">=</span> length <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">MAX_SAFE_INTEGER</span> <span class=\"pl-k\">:</span> length;</td>\n      </tr>\n      <tr>\n        <td id=\"L11725\" class=\"blob-num js-line-number\" data-line-number=\"11725\"></td>\n        <td id=\"LC11725\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> value <span class=\"pl-k\">&gt;</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">%</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">==</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">&lt;</span> length;</td>\n      </tr>\n      <tr>\n        <td id=\"L11726\" class=\"blob-num js-line-number\" data-line-number=\"11726\"></td>\n        <td id=\"LC11726\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11727\" class=\"blob-num js-line-number\" data-line-number=\"11727\"></td>\n        <td id=\"LC11727\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11728\" class=\"blob-num js-line-number\" data-line-number=\"11728\"></td>\n        <td id=\"LC11728\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isIndex;</td>\n      </tr>\n      <tr>\n        <td id=\"L11729\" class=\"blob-num js-line-number\" data-line-number=\"11729\"></td>\n        <td id=\"LC11729\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11730\" class=\"blob-num js-line-number\" data-line-number=\"11730\"></td>\n        <td id=\"LC11730\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">109</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11731\" class=\"blob-num js-line-number\" data-line-number=\"11731\"></td>\n        <td id=\"LC11731\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isIndex <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isIndex<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11732\" class=\"blob-num js-line-number\" data-line-number=\"11732\"></td>\n        <td id=\"LC11732\" class=\"blob-code blob-code-inner js-file-line\">    isLength <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isLength<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11733\" class=\"blob-num js-line-number\" data-line-number=\"11733\"></td>\n        <td id=\"LC11733\" class=\"blob-code blob-code-inner js-file-line\">    isObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isObject<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11734\" class=\"blob-num js-line-number\" data-line-number=\"11734\"></td>\n        <td id=\"LC11734\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11735\" class=\"blob-num js-line-number\" data-line-number=\"11735\"></td>\n        <td id=\"LC11735\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11736\" class=\"blob-num js-line-number\" data-line-number=\"11736\"></td>\n        <td id=\"LC11736\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isIterateeCall</span>(<span class=\"pl-smi\">value</span>, <span class=\"pl-smi\">index</span>, <span class=\"pl-smi\">object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11737\" class=\"blob-num js-line-number\" data-line-number=\"11737\"></td>\n        <td id=\"LC11737\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isObject</span>(object)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11738\" class=\"blob-num js-line-number\" data-line-number=\"11738\"></td>\n        <td id=\"LC11738\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11739\" class=\"blob-num js-line-number\" data-line-number=\"11739\"></td>\n        <td id=\"LC11739\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11740\" class=\"blob-num js-line-number\" data-line-number=\"11740\"></td>\n        <td id=\"LC11740\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> type <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> index;</td>\n      </tr>\n      <tr>\n        <td id=\"L11741\" class=\"blob-num js-line-number\" data-line-number=\"11741\"></td>\n        <td id=\"LC11741\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (type <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11742\" class=\"blob-num js-line-number\" data-line-number=\"11742\"></td>\n        <td id=\"LC11742\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">object</span>.<span class=\"pl-c1\">length</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11743\" class=\"blob-num js-line-number\" data-line-number=\"11743\"></td>\n        <td id=\"LC11743\" class=\"blob-code blob-code-inner js-file-line\">        prereq <span class=\"pl-k\">=</span> <span class=\"pl-en\">isLength</span>(length) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isIndex</span>(index, length);</td>\n      </tr>\n      <tr>\n        <td id=\"L11744\" class=\"blob-num js-line-number\" data-line-number=\"11744\"></td>\n        <td id=\"LC11744\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">else</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L11745\" class=\"blob-num js-line-number\" data-line-number=\"11745\"></td>\n        <td id=\"LC11745\" class=\"blob-code blob-code-inner js-file-line\">    prereq <span class=\"pl-k\">=</span> type <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> index <span class=\"pl-k\">in</span> object;</td>\n      </tr>\n      <tr>\n        <td id=\"L11746\" class=\"blob-num js-line-number\" data-line-number=\"11746\"></td>\n        <td id=\"LC11746\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11747\" class=\"blob-num js-line-number\" data-line-number=\"11747\"></td>\n        <td id=\"LC11747\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (prereq) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11748\" class=\"blob-num js-line-number\" data-line-number=\"11748\"></td>\n        <td id=\"LC11748\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> other <span class=\"pl-k\">=</span> object[index];</td>\n      </tr>\n      <tr>\n        <td id=\"L11749\" class=\"blob-num js-line-number\" data-line-number=\"11749\"></td>\n        <td id=\"LC11749\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> value <span class=\"pl-k\">===</span> value <span class=\"pl-k\">?</span> (value <span class=\"pl-k\">===</span> other) <span class=\"pl-k\">:</span> (other <span class=\"pl-k\">!==</span> other);</td>\n      </tr>\n      <tr>\n        <td id=\"L11750\" class=\"blob-num js-line-number\" data-line-number=\"11750\"></td>\n        <td id=\"LC11750\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11751\" class=\"blob-num js-line-number\" data-line-number=\"11751\"></td>\n        <td id=\"LC11751\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11752\" class=\"blob-num js-line-number\" data-line-number=\"11752\"></td>\n        <td id=\"LC11752\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11753\" class=\"blob-num js-line-number\" data-line-number=\"11753\"></td>\n        <td id=\"LC11753\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11754\" class=\"blob-num js-line-number\" data-line-number=\"11754\"></td>\n        <td id=\"LC11754\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isIterateeCall;</td>\n      </tr>\n      <tr>\n        <td id=\"L11755\" class=\"blob-num js-line-number\" data-line-number=\"11755\"></td>\n        <td id=\"LC11755\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11756\" class=\"blob-num js-line-number\" data-line-number=\"11756\"></td>\n        <td id=\"LC11756\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">121</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isIndex<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">108</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isLength<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">110</span>}],<span class=\"pl-c1\">110</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11757\" class=\"blob-num js-line-number\" data-line-number=\"11757\"></td>\n        <td id=\"LC11757\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11758\" class=\"blob-num js-line-number\" data-line-number=\"11758\"></td>\n        <td id=\"LC11758\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">MAX_SAFE_INTEGER</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Math</span>.<span class=\"pl-c1\">pow</span>(<span class=\"pl-c1\">2</span>, <span class=\"pl-c1\">53</span>) <span class=\"pl-k\">-</span> <span class=\"pl-c1\">1</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11759\" class=\"blob-num js-line-number\" data-line-number=\"11759\"></td>\n        <td id=\"LC11759\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11760\" class=\"blob-num js-line-number\" data-line-number=\"11760\"></td>\n        <td id=\"LC11760\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11761\" class=\"blob-num js-line-number\" data-line-number=\"11761\"></td>\n        <td id=\"LC11761\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isLength</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11762\" class=\"blob-num js-line-number\" data-line-number=\"11762\"></td>\n        <td id=\"LC11762\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>number<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">&gt;</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">%</span> <span class=\"pl-c1\">1</span> <span class=\"pl-k\">==</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">&amp;&amp;</span> value <span class=\"pl-k\">&lt;=</span> <span class=\"pl-c1\">MAX_SAFE_INTEGER</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11763\" class=\"blob-num js-line-number\" data-line-number=\"11763\"></td>\n        <td id=\"LC11763\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11764\" class=\"blob-num js-line-number\" data-line-number=\"11764\"></td>\n        <td id=\"LC11764\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11765\" class=\"blob-num js-line-number\" data-line-number=\"11765\"></td>\n        <td id=\"LC11765\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isLength;</td>\n      </tr>\n      <tr>\n        <td id=\"L11766\" class=\"blob-num js-line-number\" data-line-number=\"11766\"></td>\n        <td id=\"LC11766\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11767\" class=\"blob-num js-line-number\" data-line-number=\"11767\"></td>\n        <td id=\"LC11767\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">111</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11768\" class=\"blob-num js-line-number\" data-line-number=\"11768\"></td>\n        <td id=\"LC11768\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11769\" class=\"blob-num js-line-number\" data-line-number=\"11769\"></td>\n        <td id=\"LC11769\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isObjectLike</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11770\" class=\"blob-num js-line-number\" data-line-number=\"11770\"></td>\n        <td id=\"LC11770\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (value <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11771\" class=\"blob-num js-line-number\" data-line-number=\"11771\"></td>\n        <td id=\"LC11771\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11772\" class=\"blob-num js-line-number\" data-line-number=\"11772\"></td>\n        <td id=\"LC11772\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11773\" class=\"blob-num js-line-number\" data-line-number=\"11773\"></td>\n        <td id=\"LC11773\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isObjectLike;</td>\n      </tr>\n      <tr>\n        <td id=\"L11774\" class=\"blob-num js-line-number\" data-line-number=\"11774\"></td>\n        <td id=\"LC11774\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11775\" class=\"blob-num js-line-number\" data-line-number=\"11775\"></td>\n        <td id=\"LC11775\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">112</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11776\" class=\"blob-num js-line-number\" data-line-number=\"11776\"></td>\n        <td id=\"LC11776\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isObject<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11777\" class=\"blob-num js-line-number\" data-line-number=\"11777\"></td>\n        <td id=\"LC11777\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11778\" class=\"blob-num js-line-number\" data-line-number=\"11778\"></td>\n        <td id=\"LC11778\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11779\" class=\"blob-num js-line-number\" data-line-number=\"11779\"></td>\n        <td id=\"LC11779\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isStrictComparable</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11780\" class=\"blob-num js-line-number\" data-line-number=\"11780\"></td>\n        <td id=\"LC11780\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> value <span class=\"pl-k\">===</span> value <span class=\"pl-k\">&amp;&amp;</span> (value <span class=\"pl-k\">===</span> <span class=\"pl-c1\">0</span> <span class=\"pl-k\">?</span> ((<span class=\"pl-c1\">1</span> <span class=\"pl-k\">/</span> value) <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>) <span class=\"pl-k\">:</span> <span class=\"pl-k\">!</span><span class=\"pl-en\">isObject</span>(value));</td>\n      </tr>\n      <tr>\n        <td id=\"L11781\" class=\"blob-num js-line-number\" data-line-number=\"11781\"></td>\n        <td id=\"LC11781\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11782\" class=\"blob-num js-line-number\" data-line-number=\"11782\"></td>\n        <td id=\"LC11782\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11783\" class=\"blob-num js-line-number\" data-line-number=\"11783\"></td>\n        <td id=\"LC11783\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isStrictComparable;</td>\n      </tr>\n      <tr>\n        <td id=\"L11784\" class=\"blob-num js-line-number\" data-line-number=\"11784\"></td>\n        <td id=\"LC11784\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11785\" class=\"blob-num js-line-number\" data-line-number=\"11785\"></td>\n        <td id=\"LC11785\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">121</span>}],<span class=\"pl-c1\">113</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11786\" class=\"blob-num js-line-number\" data-line-number=\"11786\"></td>\n        <td id=\"LC11786\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span> (<span class=\"pl-c1\">global</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11787\" class=\"blob-num js-line-number\" data-line-number=\"11787\"></td>\n        <td id=\"LC11787\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isNative <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isNative<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11788\" class=\"blob-num js-line-number\" data-line-number=\"11788\"></td>\n        <td id=\"LC11788\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11789\" class=\"blob-num js-line-number\" data-line-number=\"11789\"></td>\n        <td id=\"LC11789\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11790\" class=\"blob-num js-line-number\" data-line-number=\"11790\"></td>\n        <td id=\"LC11790\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">WeakMap</span> <span class=\"pl-k\">=</span> <span class=\"pl-en\">isNative</span>(<span class=\"pl-c1\">WeakMap</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">global</span>.<span class=\"pl-smi\">WeakMap</span>) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">WeakMap</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11791\" class=\"blob-num js-line-number\" data-line-number=\"11791\"></td>\n        <td id=\"LC11791\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11792\" class=\"blob-num js-line-number\" data-line-number=\"11792\"></td>\n        <td id=\"LC11792\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11793\" class=\"blob-num js-line-number\" data-line-number=\"11793\"></td>\n        <td id=\"LC11793\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> metaMap <span class=\"pl-k\">=</span> <span class=\"pl-c1\">WeakMap</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">new</span> <span class=\"pl-en\">WeakMap</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11794\" class=\"blob-num js-line-number\" data-line-number=\"11794\"></td>\n        <td id=\"LC11794\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11795\" class=\"blob-num js-line-number\" data-line-number=\"11795\"></td>\n        <td id=\"LC11795\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> metaMap;</td>\n      </tr>\n      <tr>\n        <td id=\"L11796\" class=\"blob-num js-line-number\" data-line-number=\"11796\"></td>\n        <td id=\"LC11796\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11797\" class=\"blob-num js-line-number\" data-line-number=\"11797\"></td>\n        <td id=\"LC11797\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>,<span class=\"pl-k\">typeof</span> self <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> self <span class=\"pl-k\">:</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">:</span> {})</td>\n      </tr>\n      <tr>\n        <td id=\"L11798\" class=\"blob-num js-line-number\" data-line-number=\"11798\"></td>\n        <td id=\"LC11798\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isNative<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">120</span>}],<span class=\"pl-c1\">114</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11799\" class=\"blob-num js-line-number\" data-line-number=\"11799\"></td>\n        <td id=\"LC11799\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isArguments <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isArguments<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11800\" class=\"blob-num js-line-number\" data-line-number=\"11800\"></td>\n        <td id=\"LC11800\" class=\"blob-code blob-code-inner js-file-line\">    isArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isArray<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11801\" class=\"blob-num js-line-number\" data-line-number=\"11801\"></td>\n        <td id=\"LC11801\" class=\"blob-code blob-code-inner js-file-line\">    isIndex <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isIndex<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11802\" class=\"blob-num js-line-number\" data-line-number=\"11802\"></td>\n        <td id=\"LC11802\" class=\"blob-code blob-code-inner js-file-line\">    isLength <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isLength<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11803\" class=\"blob-num js-line-number\" data-line-number=\"11803\"></td>\n        <td id=\"LC11803\" class=\"blob-code blob-code-inner js-file-line\">    keysIn <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../object/keysIn<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11804\" class=\"blob-num js-line-number\" data-line-number=\"11804\"></td>\n        <td id=\"LC11804\" class=\"blob-code blob-code-inner js-file-line\">    support <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../support<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11805\" class=\"blob-num js-line-number\" data-line-number=\"11805\"></td>\n        <td id=\"LC11805\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11806\" class=\"blob-num js-line-number\" data-line-number=\"11806\"></td>\n        <td id=\"LC11806\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11807\" class=\"blob-num js-line-number\" data-line-number=\"11807\"></td>\n        <td id=\"LC11807\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11808\" class=\"blob-num js-line-number\" data-line-number=\"11808\"></td>\n        <td id=\"LC11808\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11809\" class=\"blob-num js-line-number\" data-line-number=\"11809\"></td>\n        <td id=\"LC11809\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11810\" class=\"blob-num js-line-number\" data-line-number=\"11810\"></td>\n        <td id=\"LC11810\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> hasOwnProperty <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11811\" class=\"blob-num js-line-number\" data-line-number=\"11811\"></td>\n        <td id=\"LC11811\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11812\" class=\"blob-num js-line-number\" data-line-number=\"11812\"></td>\n        <td id=\"LC11812\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11813\" class=\"blob-num js-line-number\" data-line-number=\"11813\"></td>\n        <td id=\"LC11813\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">shimKeys</span>(<span class=\"pl-smi\">object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11814\" class=\"blob-num js-line-number\" data-line-number=\"11814\"></td>\n        <td id=\"LC11814\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> props <span class=\"pl-k\">=</span> <span class=\"pl-en\">keysIn</span>(object),</td>\n      </tr>\n      <tr>\n        <td id=\"L11815\" class=\"blob-num js-line-number\" data-line-number=\"11815\"></td>\n        <td id=\"LC11815\" class=\"blob-code blob-code-inner js-file-line\">      propsLength <span class=\"pl-k\">=</span> <span class=\"pl-smi\">props</span>.<span class=\"pl-c1\">length</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11816\" class=\"blob-num js-line-number\" data-line-number=\"11816\"></td>\n        <td id=\"LC11816\" class=\"blob-code blob-code-inner js-file-line\">      length <span class=\"pl-k\">=</span> propsLength <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">object</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11817\" class=\"blob-num js-line-number\" data-line-number=\"11817\"></td>\n        <td id=\"LC11817\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11818\" class=\"blob-num js-line-number\" data-line-number=\"11818\"></td>\n        <td id=\"LC11818\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> allowIndexes <span class=\"pl-k\">=</span> length <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isLength</span>(length) <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11819\" class=\"blob-num js-line-number\" data-line-number=\"11819\"></td>\n        <td id=\"LC11819\" class=\"blob-code blob-code-inner js-file-line\">    (<span class=\"pl-en\">isArray</span>(object) <span class=\"pl-k\">||</span> (<span class=\"pl-smi\">support</span>.<span class=\"pl-smi\">nonEnumArgs</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isArguments</span>(object)));</td>\n      </tr>\n      <tr>\n        <td id=\"L11820\" class=\"blob-num js-line-number\" data-line-number=\"11820\"></td>\n        <td id=\"LC11820\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11821\" class=\"blob-num js-line-number\" data-line-number=\"11821\"></td>\n        <td id=\"LC11821\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> index <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L11822\" class=\"blob-num js-line-number\" data-line-number=\"11822\"></td>\n        <td id=\"LC11822\" class=\"blob-code blob-code-inner js-file-line\">      result <span class=\"pl-k\">=</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L11823\" class=\"blob-num js-line-number\" data-line-number=\"11823\"></td>\n        <td id=\"LC11823\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11824\" class=\"blob-num js-line-number\" data-line-number=\"11824\"></td>\n        <td id=\"LC11824\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (<span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> propsLength) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11825\" class=\"blob-num js-line-number\" data-line-number=\"11825\"></td>\n        <td id=\"LC11825\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> key <span class=\"pl-k\">=</span> props[index];</td>\n      </tr>\n      <tr>\n        <td id=\"L11826\" class=\"blob-num js-line-number\" data-line-number=\"11826\"></td>\n        <td id=\"LC11826\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> ((allowIndexes <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isIndex</span>(key, length)) <span class=\"pl-k\">||</span> <span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(object, key)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11827\" class=\"blob-num js-line-number\" data-line-number=\"11827\"></td>\n        <td id=\"LC11827\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">push</span>(key);</td>\n      </tr>\n      <tr>\n        <td id=\"L11828\" class=\"blob-num js-line-number\" data-line-number=\"11828\"></td>\n        <td id=\"LC11828\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L11829\" class=\"blob-num js-line-number\" data-line-number=\"11829\"></td>\n        <td id=\"LC11829\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11830\" class=\"blob-num js-line-number\" data-line-number=\"11830\"></td>\n        <td id=\"LC11830\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L11831\" class=\"blob-num js-line-number\" data-line-number=\"11831\"></td>\n        <td id=\"LC11831\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11832\" class=\"blob-num js-line-number\" data-line-number=\"11832\"></td>\n        <td id=\"LC11832\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11833\" class=\"blob-num js-line-number\" data-line-number=\"11833\"></td>\n        <td id=\"LC11833\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> shimKeys;</td>\n      </tr>\n      <tr>\n        <td id=\"L11834\" class=\"blob-num js-line-number\" data-line-number=\"11834\"></td>\n        <td id=\"LC11834\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11835\" class=\"blob-num js-line-number\" data-line-number=\"11835\"></td>\n        <td id=\"LC11835\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isArguments<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">116</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isArray<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">117</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../object/keysIn<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">127</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../support<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">129</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isIndex<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">108</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isLength<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">110</span>}],<span class=\"pl-c1\">115</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11836\" class=\"blob-num js-line-number\" data-line-number=\"11836\"></td>\n        <td id=\"LC11836\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isObject<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11837\" class=\"blob-num js-line-number\" data-line-number=\"11837\"></td>\n        <td id=\"LC11837\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11838\" class=\"blob-num js-line-number\" data-line-number=\"11838\"></td>\n        <td id=\"LC11838\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11839\" class=\"blob-num js-line-number\" data-line-number=\"11839\"></td>\n        <td id=\"LC11839\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">toObject</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11840\" class=\"blob-num js-line-number\" data-line-number=\"11840\"></td>\n        <td id=\"LC11840\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">isObject</span>(value) <span class=\"pl-k\">?</span> value <span class=\"pl-k\">:</span> <span class=\"pl-c1\">Object</span>(value);</td>\n      </tr>\n      <tr>\n        <td id=\"L11841\" class=\"blob-num js-line-number\" data-line-number=\"11841\"></td>\n        <td id=\"LC11841\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11842\" class=\"blob-num js-line-number\" data-line-number=\"11842\"></td>\n        <td id=\"LC11842\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11843\" class=\"blob-num js-line-number\" data-line-number=\"11843\"></td>\n        <td id=\"LC11843\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> toObject;</td>\n      </tr>\n      <tr>\n        <td id=\"L11844\" class=\"blob-num js-line-number\" data-line-number=\"11844\"></td>\n        <td id=\"LC11844\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11845\" class=\"blob-num js-line-number\" data-line-number=\"11845\"></td>\n        <td id=\"LC11845\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">121</span>}],<span class=\"pl-c1\">116</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11846\" class=\"blob-num js-line-number\" data-line-number=\"11846\"></td>\n        <td id=\"LC11846\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isLength <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isLength<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11847\" class=\"blob-num js-line-number\" data-line-number=\"11847\"></td>\n        <td id=\"LC11847\" class=\"blob-code blob-code-inner js-file-line\">    isObjectLike <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isObjectLike<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11848\" class=\"blob-num js-line-number\" data-line-number=\"11848\"></td>\n        <td id=\"LC11848\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11849\" class=\"blob-num js-line-number\" data-line-number=\"11849\"></td>\n        <td id=\"LC11849\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11850\" class=\"blob-num js-line-number\" data-line-number=\"11850\"></td>\n        <td id=\"LC11850\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> argsTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Arguments]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11851\" class=\"blob-num js-line-number\" data-line-number=\"11851\"></td>\n        <td id=\"LC11851\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11852\" class=\"blob-num js-line-number\" data-line-number=\"11852\"></td>\n        <td id=\"LC11852\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11853\" class=\"blob-num js-line-number\" data-line-number=\"11853\"></td>\n        <td id=\"LC11853\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11854\" class=\"blob-num js-line-number\" data-line-number=\"11854\"></td>\n        <td id=\"LC11854\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11855\" class=\"blob-num js-line-number\" data-line-number=\"11855\"></td>\n        <td id=\"LC11855\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11856\" class=\"blob-num js-line-number\" data-line-number=\"11856\"></td>\n        <td id=\"LC11856\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objToString <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">toString</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11857\" class=\"blob-num js-line-number\" data-line-number=\"11857\"></td>\n        <td id=\"LC11857\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11858\" class=\"blob-num js-line-number\" data-line-number=\"11858\"></td>\n        <td id=\"LC11858\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11859\" class=\"blob-num js-line-number\" data-line-number=\"11859\"></td>\n        <td id=\"LC11859\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isArguments</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11860\" class=\"blob-num js-line-number\" data-line-number=\"11860\"></td>\n        <td id=\"LC11860\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-en\">isObjectLike</span>(value) <span class=\"pl-k\">?</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">length</span> <span class=\"pl-k\">:</span> <span class=\"pl-c1\">undefined</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11861\" class=\"blob-num js-line-number\" data-line-number=\"11861\"></td>\n        <td id=\"LC11861\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (<span class=\"pl-en\">isLength</span>(length) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">objToString</span>.<span class=\"pl-c1\">call</span>(value) <span class=\"pl-k\">==</span> argsTag) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11862\" class=\"blob-num js-line-number\" data-line-number=\"11862\"></td>\n        <td id=\"LC11862\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11863\" class=\"blob-num js-line-number\" data-line-number=\"11863\"></td>\n        <td id=\"LC11863\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11864\" class=\"blob-num js-line-number\" data-line-number=\"11864\"></td>\n        <td id=\"LC11864\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isArguments;</td>\n      </tr>\n      <tr>\n        <td id=\"L11865\" class=\"blob-num js-line-number\" data-line-number=\"11865\"></td>\n        <td id=\"LC11865\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11866\" class=\"blob-num js-line-number\" data-line-number=\"11866\"></td>\n        <td id=\"LC11866\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isLength<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">110</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isObjectLike<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">111</span>}],<span class=\"pl-c1\">117</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11867\" class=\"blob-num js-line-number\" data-line-number=\"11867\"></td>\n        <td id=\"LC11867\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isLength <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isLength<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11868\" class=\"blob-num js-line-number\" data-line-number=\"11868\"></td>\n        <td id=\"LC11868\" class=\"blob-code blob-code-inner js-file-line\">    isNative <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isNative<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11869\" class=\"blob-num js-line-number\" data-line-number=\"11869\"></td>\n        <td id=\"LC11869\" class=\"blob-code blob-code-inner js-file-line\">    isObjectLike <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isObjectLike<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11870\" class=\"blob-num js-line-number\" data-line-number=\"11870\"></td>\n        <td id=\"LC11870\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11871\" class=\"blob-num js-line-number\" data-line-number=\"11871\"></td>\n        <td id=\"LC11871\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11872\" class=\"blob-num js-line-number\" data-line-number=\"11872\"></td>\n        <td id=\"LC11872\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> arrayTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Array]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11873\" class=\"blob-num js-line-number\" data-line-number=\"11873\"></td>\n        <td id=\"LC11873\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11874\" class=\"blob-num js-line-number\" data-line-number=\"11874\"></td>\n        <td id=\"LC11874\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11875\" class=\"blob-num js-line-number\" data-line-number=\"11875\"></td>\n        <td id=\"LC11875\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11876\" class=\"blob-num js-line-number\" data-line-number=\"11876\"></td>\n        <td id=\"LC11876\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11877\" class=\"blob-num js-line-number\" data-line-number=\"11877\"></td>\n        <td id=\"LC11877\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11878\" class=\"blob-num js-line-number\" data-line-number=\"11878\"></td>\n        <td id=\"LC11878\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objToString <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">toString</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11879\" class=\"blob-num js-line-number\" data-line-number=\"11879\"></td>\n        <td id=\"LC11879\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11880\" class=\"blob-num js-line-number\" data-line-number=\"11880\"></td>\n        <td id=\"LC11880\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11881\" class=\"blob-num js-line-number\" data-line-number=\"11881\"></td>\n        <td id=\"LC11881\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> nativeIsArray <span class=\"pl-k\">=</span> <span class=\"pl-en\">isNative</span>(nativeIsArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Array</span>.<span class=\"pl-smi\">isArray</span>) <span class=\"pl-k\">&amp;&amp;</span> nativeIsArray;</td>\n      </tr>\n      <tr>\n        <td id=\"L11882\" class=\"blob-num js-line-number\" data-line-number=\"11882\"></td>\n        <td id=\"LC11882\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11883\" class=\"blob-num js-line-number\" data-line-number=\"11883\"></td>\n        <td id=\"LC11883\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11884\" class=\"blob-num js-line-number\" data-line-number=\"11884\"></td>\n        <td id=\"LC11884\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isArray <span class=\"pl-k\">=</span> nativeIsArray <span class=\"pl-k\">||</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11885\" class=\"blob-num js-line-number\" data-line-number=\"11885\"></td>\n        <td id=\"LC11885\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (<span class=\"pl-en\">isObjectLike</span>(value) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isLength</span>(<span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">length</span>) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">objToString</span>.<span class=\"pl-c1\">call</span>(value) <span class=\"pl-k\">==</span> arrayTag) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11886\" class=\"blob-num js-line-number\" data-line-number=\"11886\"></td>\n        <td id=\"LC11886\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L11887\" class=\"blob-num js-line-number\" data-line-number=\"11887\"></td>\n        <td id=\"LC11887\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11888\" class=\"blob-num js-line-number\" data-line-number=\"11888\"></td>\n        <td id=\"LC11888\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isArray;</td>\n      </tr>\n      <tr>\n        <td id=\"L11889\" class=\"blob-num js-line-number\" data-line-number=\"11889\"></td>\n        <td id=\"LC11889\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11890\" class=\"blob-num js-line-number\" data-line-number=\"11890\"></td>\n        <td id=\"LC11890\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isLength<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">110</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isObjectLike<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">111</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isNative<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">120</span>}],<span class=\"pl-c1\">118</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11891\" class=\"blob-num js-line-number\" data-line-number=\"11891\"></td>\n        <td id=\"LC11891\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isArguments <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isArguments<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11892\" class=\"blob-num js-line-number\" data-line-number=\"11892\"></td>\n        <td id=\"LC11892\" class=\"blob-code blob-code-inner js-file-line\">    isArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isArray<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11893\" class=\"blob-num js-line-number\" data-line-number=\"11893\"></td>\n        <td id=\"LC11893\" class=\"blob-code blob-code-inner js-file-line\">    isFunction <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isFunction<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11894\" class=\"blob-num js-line-number\" data-line-number=\"11894\"></td>\n        <td id=\"LC11894\" class=\"blob-code blob-code-inner js-file-line\">    isLength <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isLength<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11895\" class=\"blob-num js-line-number\" data-line-number=\"11895\"></td>\n        <td id=\"LC11895\" class=\"blob-code blob-code-inner js-file-line\">    isObjectLike <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isObjectLike<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11896\" class=\"blob-num js-line-number\" data-line-number=\"11896\"></td>\n        <td id=\"LC11896\" class=\"blob-code blob-code-inner js-file-line\">    isString <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isString<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11897\" class=\"blob-num js-line-number\" data-line-number=\"11897\"></td>\n        <td id=\"LC11897\" class=\"blob-code blob-code-inner js-file-line\">    keys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../object/keys<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11898\" class=\"blob-num js-line-number\" data-line-number=\"11898\"></td>\n        <td id=\"LC11898\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11899\" class=\"blob-num js-line-number\" data-line-number=\"11899\"></td>\n        <td id=\"LC11899\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11900\" class=\"blob-num js-line-number\" data-line-number=\"11900\"></td>\n        <td id=\"LC11900\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isEmpty</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11901\" class=\"blob-num js-line-number\" data-line-number=\"11901\"></td>\n        <td id=\"LC11901\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11902\" class=\"blob-num js-line-number\" data-line-number=\"11902\"></td>\n        <td id=\"LC11902\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11903\" class=\"blob-num js-line-number\" data-line-number=\"11903\"></td>\n        <td id=\"LC11903\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11904\" class=\"blob-num js-line-number\" data-line-number=\"11904\"></td>\n        <td id=\"LC11904\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11905\" class=\"blob-num js-line-number\" data-line-number=\"11905\"></td>\n        <td id=\"LC11905\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-en\">isLength</span>(length) <span class=\"pl-k\">&amp;&amp;</span> (<span class=\"pl-en\">isArray</span>(value) <span class=\"pl-k\">||</span> <span class=\"pl-en\">isString</span>(value) <span class=\"pl-k\">||</span> <span class=\"pl-en\">isArguments</span>(value) <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11906\" class=\"blob-num js-line-number\" data-line-number=\"11906\"></td>\n        <td id=\"LC11906\" class=\"blob-code blob-code-inner js-file-line\">      (<span class=\"pl-en\">isObjectLike</span>(value) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isFunction</span>(<span class=\"pl-smi\">value</span>.<span class=\"pl-smi\">splice</span>)))) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11907\" class=\"blob-num js-line-number\" data-line-number=\"11907\"></td>\n        <td id=\"LC11907\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-k\">!</span>length;</td>\n      </tr>\n      <tr>\n        <td id=\"L11908\" class=\"blob-num js-line-number\" data-line-number=\"11908\"></td>\n        <td id=\"LC11908\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11909\" class=\"blob-num js-line-number\" data-line-number=\"11909\"></td>\n        <td id=\"LC11909\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">!</span><span class=\"pl-en\">keys</span>(value).<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11910\" class=\"blob-num js-line-number\" data-line-number=\"11910\"></td>\n        <td id=\"LC11910\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11911\" class=\"blob-num js-line-number\" data-line-number=\"11911\"></td>\n        <td id=\"LC11911\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11912\" class=\"blob-num js-line-number\" data-line-number=\"11912\"></td>\n        <td id=\"LC11912\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isEmpty;</td>\n      </tr>\n      <tr>\n        <td id=\"L11913\" class=\"blob-num js-line-number\" data-line-number=\"11913\"></td>\n        <td id=\"LC11913\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11914\" class=\"blob-num js-line-number\" data-line-number=\"11914\"></td>\n        <td id=\"LC11914\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isLength<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">110</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isObjectLike<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">111</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../object/keys<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">126</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isArguments<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">116</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isArray<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">117</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isFunction<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">119</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isString<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">122</span>}],<span class=\"pl-c1\">119</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11915\" class=\"blob-num js-line-number\" data-line-number=\"11915\"></td>\n        <td id=\"LC11915\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span> (<span class=\"pl-c1\">global</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11916\" class=\"blob-num js-line-number\" data-line-number=\"11916\"></td>\n        <td id=\"LC11916\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseIsFunction <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/baseIsFunction<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11917\" class=\"blob-num js-line-number\" data-line-number=\"11917\"></td>\n        <td id=\"LC11917\" class=\"blob-code blob-code-inner js-file-line\">    isNative <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./isNative<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11918\" class=\"blob-num js-line-number\" data-line-number=\"11918\"></td>\n        <td id=\"LC11918\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11919\" class=\"blob-num js-line-number\" data-line-number=\"11919\"></td>\n        <td id=\"LC11919\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11920\" class=\"blob-num js-line-number\" data-line-number=\"11920\"></td>\n        <td id=\"LC11920\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> funcTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Function]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11921\" class=\"blob-num js-line-number\" data-line-number=\"11921\"></td>\n        <td id=\"LC11921\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11922\" class=\"blob-num js-line-number\" data-line-number=\"11922\"></td>\n        <td id=\"LC11922\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11923\" class=\"blob-num js-line-number\" data-line-number=\"11923\"></td>\n        <td id=\"LC11923\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11924\" class=\"blob-num js-line-number\" data-line-number=\"11924\"></td>\n        <td id=\"LC11924\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11925\" class=\"blob-num js-line-number\" data-line-number=\"11925\"></td>\n        <td id=\"LC11925\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11926\" class=\"blob-num js-line-number\" data-line-number=\"11926\"></td>\n        <td id=\"LC11926\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objToString <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">toString</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11927\" class=\"blob-num js-line-number\" data-line-number=\"11927\"></td>\n        <td id=\"LC11927\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11928\" class=\"blob-num js-line-number\" data-line-number=\"11928\"></td>\n        <td id=\"LC11928\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11929\" class=\"blob-num js-line-number\" data-line-number=\"11929\"></td>\n        <td id=\"LC11929\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> Uint8Array <span class=\"pl-k\">=</span> <span class=\"pl-en\">isNative</span>(Uint8Array <span class=\"pl-k\">=</span> <span class=\"pl-c1\">global</span>.<span class=\"pl-smi\">Uint8Array</span>) <span class=\"pl-k\">&amp;&amp;</span> Uint8Array;</td>\n      </tr>\n      <tr>\n        <td id=\"L11930\" class=\"blob-num js-line-number\" data-line-number=\"11930\"></td>\n        <td id=\"LC11930\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11931\" class=\"blob-num js-line-number\" data-line-number=\"11931\"></td>\n        <td id=\"LC11931\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11932\" class=\"blob-num js-line-number\" data-line-number=\"11932\"></td>\n        <td id=\"LC11932\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isFunction <span class=\"pl-k\">=</span> <span class=\"pl-k\">!</span>(<span class=\"pl-en\">baseIsFunction</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>x<span class=\"pl-pds\">/</span></span>) <span class=\"pl-k\">||</span> (Uint8Array <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-k\">!</span><span class=\"pl-en\">baseIsFunction</span>(Uint8Array))) <span class=\"pl-k\">?</span> <span class=\"pl-en\">baseIsFunction</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11933\" class=\"blob-num js-line-number\" data-line-number=\"11933\"></td>\n        <td id=\"LC11933\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-smi\">objToString</span>.<span class=\"pl-c1\">call</span>(value) <span class=\"pl-k\">==</span> funcTag;</td>\n      </tr>\n      <tr>\n        <td id=\"L11934\" class=\"blob-num js-line-number\" data-line-number=\"11934\"></td>\n        <td id=\"LC11934\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L11935\" class=\"blob-num js-line-number\" data-line-number=\"11935\"></td>\n        <td id=\"LC11935\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11936\" class=\"blob-num js-line-number\" data-line-number=\"11936\"></td>\n        <td id=\"LC11936\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isFunction;</td>\n      </tr>\n      <tr>\n        <td id=\"L11937\" class=\"blob-num js-line-number\" data-line-number=\"11937\"></td>\n        <td id=\"LC11937\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11938\" class=\"blob-num js-line-number\" data-line-number=\"11938\"></td>\n        <td id=\"LC11938\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>,<span class=\"pl-k\">typeof</span> self <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> self <span class=\"pl-k\">:</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">:</span> {})</td>\n      </tr>\n      <tr>\n        <td id=\"L11939\" class=\"blob-num js-line-number\" data-line-number=\"11939\"></td>\n        <td id=\"LC11939\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/baseIsFunction<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">95</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./isNative<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">120</span>}],<span class=\"pl-c1\">120</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11940\" class=\"blob-num js-line-number\" data-line-number=\"11940\"></td>\n        <td id=\"LC11940\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> escapeRegExp <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../string/escapeRegExp<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L11941\" class=\"blob-num js-line-number\" data-line-number=\"11941\"></td>\n        <td id=\"LC11941\" class=\"blob-code blob-code-inner js-file-line\">    isObjectLike <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isObjectLike<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11942\" class=\"blob-num js-line-number\" data-line-number=\"11942\"></td>\n        <td id=\"LC11942\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11943\" class=\"blob-num js-line-number\" data-line-number=\"11943\"></td>\n        <td id=\"LC11943\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11944\" class=\"blob-num js-line-number\" data-line-number=\"11944\"></td>\n        <td id=\"LC11944\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> funcTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Function]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11945\" class=\"blob-num js-line-number\" data-line-number=\"11945\"></td>\n        <td id=\"LC11945\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11946\" class=\"blob-num js-line-number\" data-line-number=\"11946\"></td>\n        <td id=\"LC11946\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11947\" class=\"blob-num js-line-number\" data-line-number=\"11947\"></td>\n        <td id=\"LC11947\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> reHostCtor <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-k\">^</span><span class=\"pl-cce\">\\[</span>object <span class=\"pl-c1\">.</span><span class=\"pl-k\">+?</span>Constructor<span class=\"pl-cce\">\\]</span><span class=\"pl-k\">$</span><span class=\"pl-pds\">/</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11948\" class=\"blob-num js-line-number\" data-line-number=\"11948\"></td>\n        <td id=\"LC11948\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11949\" class=\"blob-num js-line-number\" data-line-number=\"11949\"></td>\n        <td id=\"LC11949\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11950\" class=\"blob-num js-line-number\" data-line-number=\"11950\"></td>\n        <td id=\"LC11950\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11951\" class=\"blob-num js-line-number\" data-line-number=\"11951\"></td>\n        <td id=\"LC11951\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11952\" class=\"blob-num js-line-number\" data-line-number=\"11952\"></td>\n        <td id=\"LC11952\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11953\" class=\"blob-num js-line-number\" data-line-number=\"11953\"></td>\n        <td id=\"LC11953\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> fnToString <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Function</span>.<span class=\"pl-c1\">prototype</span>.<span class=\"pl-smi\">toString</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11954\" class=\"blob-num js-line-number\" data-line-number=\"11954\"></td>\n        <td id=\"LC11954\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11955\" class=\"blob-num js-line-number\" data-line-number=\"11955\"></td>\n        <td id=\"LC11955\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11956\" class=\"blob-num js-line-number\" data-line-number=\"11956\"></td>\n        <td id=\"LC11956\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objToString <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">toString</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11957\" class=\"blob-num js-line-number\" data-line-number=\"11957\"></td>\n        <td id=\"LC11957\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11958\" class=\"blob-num js-line-number\" data-line-number=\"11958\"></td>\n        <td id=\"LC11958\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11959\" class=\"blob-num js-line-number\" data-line-number=\"11959\"></td>\n        <td id=\"LC11959\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> reNative <span class=\"pl-k\">=</span> <span class=\"pl-c1\">RegExp</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>^<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">+</span></td>\n      </tr>\n      <tr>\n        <td id=\"L11960\" class=\"blob-num js-line-number\" data-line-number=\"11960\"></td>\n        <td id=\"LC11960\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-en\">escapeRegExp</span>(objToString)</td>\n      </tr>\n      <tr>\n        <td id=\"L11961\" class=\"blob-num js-line-number\" data-line-number=\"11961\"></td>\n        <td id=\"LC11961\" class=\"blob-code blob-code-inner js-file-line\">  .<span class=\"pl-c1\">replace</span>(<span class=\"pl-sr\"><span class=\"pl-pds\">/</span>toString<span class=\"pl-k\">|</span>(function)<span class=\"pl-c1\">.</span><span class=\"pl-k\">*?</span>(?=<span class=\"pl-cce\">\\\\\\(</span>)<span class=\"pl-k\">|</span> for <span class=\"pl-c1\">.</span><span class=\"pl-k\">+?</span>(?=<span class=\"pl-cce\">\\\\\\]</span>)<span class=\"pl-pds\">/</span>g</span>, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>$1.*?<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>$<span class=\"pl-pds\">&#39;</span></span></td>\n      </tr>\n      <tr>\n        <td id=\"L11962\" class=\"blob-num js-line-number\" data-line-number=\"11962\"></td>\n        <td id=\"LC11962\" class=\"blob-code blob-code-inner js-file-line\">);</td>\n      </tr>\n      <tr>\n        <td id=\"L11963\" class=\"blob-num js-line-number\" data-line-number=\"11963\"></td>\n        <td id=\"LC11963\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11964\" class=\"blob-num js-line-number\" data-line-number=\"11964\"></td>\n        <td id=\"LC11964\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11965\" class=\"blob-num js-line-number\" data-line-number=\"11965\"></td>\n        <td id=\"LC11965\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isNative</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11966\" class=\"blob-num js-line-number\" data-line-number=\"11966\"></td>\n        <td id=\"LC11966\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (value <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11967\" class=\"blob-num js-line-number\" data-line-number=\"11967\"></td>\n        <td id=\"LC11967\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11968\" class=\"blob-num js-line-number\" data-line-number=\"11968\"></td>\n        <td id=\"LC11968\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11969\" class=\"blob-num js-line-number\" data-line-number=\"11969\"></td>\n        <td id=\"LC11969\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-smi\">objToString</span>.<span class=\"pl-c1\">call</span>(value) <span class=\"pl-k\">==</span> funcTag) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11970\" class=\"blob-num js-line-number\" data-line-number=\"11970\"></td>\n        <td id=\"LC11970\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-smi\">reNative</span>.<span class=\"pl-c1\">test</span>(<span class=\"pl-smi\">fnToString</span>.<span class=\"pl-c1\">call</span>(value));</td>\n      </tr>\n      <tr>\n        <td id=\"L11971\" class=\"blob-num js-line-number\" data-line-number=\"11971\"></td>\n        <td id=\"LC11971\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L11972\" class=\"blob-num js-line-number\" data-line-number=\"11972\"></td>\n        <td id=\"LC11972\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (<span class=\"pl-en\">isObjectLike</span>(value) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">reHostCtor</span>.<span class=\"pl-c1\">test</span>(value)) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11973\" class=\"blob-num js-line-number\" data-line-number=\"11973\"></td>\n        <td id=\"LC11973\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11974\" class=\"blob-num js-line-number\" data-line-number=\"11974\"></td>\n        <td id=\"LC11974\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11975\" class=\"blob-num js-line-number\" data-line-number=\"11975\"></td>\n        <td id=\"LC11975\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isNative;</td>\n      </tr>\n      <tr>\n        <td id=\"L11976\" class=\"blob-num js-line-number\" data-line-number=\"11976\"></td>\n        <td id=\"LC11976\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11977\" class=\"blob-num js-line-number\" data-line-number=\"11977\"></td>\n        <td id=\"LC11977\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isObjectLike<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">111</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../string/escapeRegExp<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">128</span>}],<span class=\"pl-c1\">121</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11978\" class=\"blob-num js-line-number\" data-line-number=\"11978\"></td>\n        <td id=\"LC11978\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11979\" class=\"blob-num js-line-number\" data-line-number=\"11979\"></td>\n        <td id=\"LC11979\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isObject</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L11980\" class=\"blob-num js-line-number\" data-line-number=\"11980\"></td>\n        <td id=\"LC11980\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> type <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L11981\" class=\"blob-num js-line-number\" data-line-number=\"11981\"></td>\n        <td id=\"LC11981\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> type <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> (value <span class=\"pl-k\">&amp;&amp;</span> type <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>object<span class=\"pl-pds\">&#39;</span></span>) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11982\" class=\"blob-num js-line-number\" data-line-number=\"11982\"></td>\n        <td id=\"LC11982\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L11983\" class=\"blob-num js-line-number\" data-line-number=\"11983\"></td>\n        <td id=\"LC11983\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11984\" class=\"blob-num js-line-number\" data-line-number=\"11984\"></td>\n        <td id=\"LC11984\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isObject;</td>\n      </tr>\n      <tr>\n        <td id=\"L11985\" class=\"blob-num js-line-number\" data-line-number=\"11985\"></td>\n        <td id=\"LC11985\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11986\" class=\"blob-num js-line-number\" data-line-number=\"11986\"></td>\n        <td id=\"LC11986\" class=\"blob-code blob-code-inner js-file-line\">},{}],<span class=\"pl-c1\">122</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L11987\" class=\"blob-num js-line-number\" data-line-number=\"11987\"></td>\n        <td id=\"LC11987\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isObjectLike <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isObjectLike<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L11988\" class=\"blob-num js-line-number\" data-line-number=\"11988\"></td>\n        <td id=\"LC11988\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11989\" class=\"blob-num js-line-number\" data-line-number=\"11989\"></td>\n        <td id=\"LC11989\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11990\" class=\"blob-num js-line-number\" data-line-number=\"11990\"></td>\n        <td id=\"LC11990\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> stringTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object String]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11991\" class=\"blob-num js-line-number\" data-line-number=\"11991\"></td>\n        <td id=\"LC11991\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11992\" class=\"blob-num js-line-number\" data-line-number=\"11992\"></td>\n        <td id=\"LC11992\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11993\" class=\"blob-num js-line-number\" data-line-number=\"11993\"></td>\n        <td id=\"LC11993\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11994\" class=\"blob-num js-line-number\" data-line-number=\"11994\"></td>\n        <td id=\"LC11994\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11995\" class=\"blob-num js-line-number\" data-line-number=\"11995\"></td>\n        <td id=\"LC11995\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11996\" class=\"blob-num js-line-number\" data-line-number=\"11996\"></td>\n        <td id=\"LC11996\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objToString <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">toString</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L11997\" class=\"blob-num js-line-number\" data-line-number=\"11997\"></td>\n        <td id=\"LC11997\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11998\" class=\"blob-num js-line-number\" data-line-number=\"11998\"></td>\n        <td id=\"LC11998\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L11999\" class=\"blob-num js-line-number\" data-line-number=\"11999\"></td>\n        <td id=\"LC11999\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isString</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12000\" class=\"blob-num js-line-number\" data-line-number=\"12000\"></td>\n        <td id=\"LC12000\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-k\">typeof</span> value <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">||</span> (<span class=\"pl-en\">isObjectLike</span>(value) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">objToString</span>.<span class=\"pl-c1\">call</span>(value) <span class=\"pl-k\">==</span> stringTag) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12001\" class=\"blob-num js-line-number\" data-line-number=\"12001\"></td>\n        <td id=\"LC12001\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L12002\" class=\"blob-num js-line-number\" data-line-number=\"12002\"></td>\n        <td id=\"LC12002\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12003\" class=\"blob-num js-line-number\" data-line-number=\"12003\"></td>\n        <td id=\"LC12003\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isString;</td>\n      </tr>\n      <tr>\n        <td id=\"L12004\" class=\"blob-num js-line-number\" data-line-number=\"12004\"></td>\n        <td id=\"LC12004\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12005\" class=\"blob-num js-line-number\" data-line-number=\"12005\"></td>\n        <td id=\"LC12005\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isObjectLike<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">111</span>}],<span class=\"pl-c1\">123</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L12006\" class=\"blob-num js-line-number\" data-line-number=\"12006\"></td>\n        <td id=\"LC12006\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isLength <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isLength<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12007\" class=\"blob-num js-line-number\" data-line-number=\"12007\"></td>\n        <td id=\"LC12007\" class=\"blob-code blob-code-inner js-file-line\">    isObjectLike <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isObjectLike<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L12008\" class=\"blob-num js-line-number\" data-line-number=\"12008\"></td>\n        <td id=\"LC12008\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12009\" class=\"blob-num js-line-number\" data-line-number=\"12009\"></td>\n        <td id=\"LC12009\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12010\" class=\"blob-num js-line-number\" data-line-number=\"12010\"></td>\n        <td id=\"LC12010\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> argsTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Arguments]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12011\" class=\"blob-num js-line-number\" data-line-number=\"12011\"></td>\n        <td id=\"LC12011\" class=\"blob-code blob-code-inner js-file-line\">    arrayTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Array]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12012\" class=\"blob-num js-line-number\" data-line-number=\"12012\"></td>\n        <td id=\"LC12012\" class=\"blob-code blob-code-inner js-file-line\">    boolTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Boolean]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12013\" class=\"blob-num js-line-number\" data-line-number=\"12013\"></td>\n        <td id=\"LC12013\" class=\"blob-code blob-code-inner js-file-line\">    dateTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Date]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12014\" class=\"blob-num js-line-number\" data-line-number=\"12014\"></td>\n        <td id=\"LC12014\" class=\"blob-code blob-code-inner js-file-line\">    errorTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Error]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12015\" class=\"blob-num js-line-number\" data-line-number=\"12015\"></td>\n        <td id=\"LC12015\" class=\"blob-code blob-code-inner js-file-line\">    funcTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Function]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12016\" class=\"blob-num js-line-number\" data-line-number=\"12016\"></td>\n        <td id=\"LC12016\" class=\"blob-code blob-code-inner js-file-line\">    mapTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Map]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12017\" class=\"blob-num js-line-number\" data-line-number=\"12017\"></td>\n        <td id=\"LC12017\" class=\"blob-code blob-code-inner js-file-line\">    numberTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Number]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12018\" class=\"blob-num js-line-number\" data-line-number=\"12018\"></td>\n        <td id=\"LC12018\" class=\"blob-code blob-code-inner js-file-line\">    objectTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Object]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12019\" class=\"blob-num js-line-number\" data-line-number=\"12019\"></td>\n        <td id=\"LC12019\" class=\"blob-code blob-code-inner js-file-line\">    regexpTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object RegExp]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12020\" class=\"blob-num js-line-number\" data-line-number=\"12020\"></td>\n        <td id=\"LC12020\" class=\"blob-code blob-code-inner js-file-line\">    setTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Set]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12021\" class=\"blob-num js-line-number\" data-line-number=\"12021\"></td>\n        <td id=\"LC12021\" class=\"blob-code blob-code-inner js-file-line\">    stringTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object String]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12022\" class=\"blob-num js-line-number\" data-line-number=\"12022\"></td>\n        <td id=\"LC12022\" class=\"blob-code blob-code-inner js-file-line\">    weakMapTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object WeakMap]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12023\" class=\"blob-num js-line-number\" data-line-number=\"12023\"></td>\n        <td id=\"LC12023\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12024\" class=\"blob-num js-line-number\" data-line-number=\"12024\"></td>\n        <td id=\"LC12024\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> arrayBufferTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object ArrayBuffer]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12025\" class=\"blob-num js-line-number\" data-line-number=\"12025\"></td>\n        <td id=\"LC12025\" class=\"blob-code blob-code-inner js-file-line\">    float32Tag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Float32Array]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12026\" class=\"blob-num js-line-number\" data-line-number=\"12026\"></td>\n        <td id=\"LC12026\" class=\"blob-code blob-code-inner js-file-line\">    float64Tag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Float64Array]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12027\" class=\"blob-num js-line-number\" data-line-number=\"12027\"></td>\n        <td id=\"LC12027\" class=\"blob-code blob-code-inner js-file-line\">    int8Tag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Int8Array]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12028\" class=\"blob-num js-line-number\" data-line-number=\"12028\"></td>\n        <td id=\"LC12028\" class=\"blob-code blob-code-inner js-file-line\">    int16Tag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Int16Array]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12029\" class=\"blob-num js-line-number\" data-line-number=\"12029\"></td>\n        <td id=\"LC12029\" class=\"blob-code blob-code-inner js-file-line\">    int32Tag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Int32Array]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12030\" class=\"blob-num js-line-number\" data-line-number=\"12030\"></td>\n        <td id=\"LC12030\" class=\"blob-code blob-code-inner js-file-line\">    uint8Tag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Uint8Array]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12031\" class=\"blob-num js-line-number\" data-line-number=\"12031\"></td>\n        <td id=\"LC12031\" class=\"blob-code blob-code-inner js-file-line\">    uint8ClampedTag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Uint8ClampedArray]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12032\" class=\"blob-num js-line-number\" data-line-number=\"12032\"></td>\n        <td id=\"LC12032\" class=\"blob-code blob-code-inner js-file-line\">    uint16Tag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Uint16Array]<span class=\"pl-pds\">&#39;</span></span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12033\" class=\"blob-num js-line-number\" data-line-number=\"12033\"></td>\n        <td id=\"LC12033\" class=\"blob-code blob-code-inner js-file-line\">    uint32Tag <span class=\"pl-k\">=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>[object Uint32Array]<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12034\" class=\"blob-num js-line-number\" data-line-number=\"12034\"></td>\n        <td id=\"LC12034\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12035\" class=\"blob-num js-line-number\" data-line-number=\"12035\"></td>\n        <td id=\"LC12035\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12036\" class=\"blob-num js-line-number\" data-line-number=\"12036\"></td>\n        <td id=\"LC12036\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> typedArrayTags <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L12037\" class=\"blob-num js-line-number\" data-line-number=\"12037\"></td>\n        <td id=\"LC12037\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[float32Tag] <span class=\"pl-k\">=</span> typedArrayTags[float64Tag] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12038\" class=\"blob-num js-line-number\" data-line-number=\"12038\"></td>\n        <td id=\"LC12038\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[int8Tag] <span class=\"pl-k\">=</span> typedArrayTags[int16Tag] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12039\" class=\"blob-num js-line-number\" data-line-number=\"12039\"></td>\n        <td id=\"LC12039\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[int32Tag] <span class=\"pl-k\">=</span> typedArrayTags[uint8Tag] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12040\" class=\"blob-num js-line-number\" data-line-number=\"12040\"></td>\n        <td id=\"LC12040\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[uint8ClampedTag] <span class=\"pl-k\">=</span> typedArrayTags[uint16Tag] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12041\" class=\"blob-num js-line-number\" data-line-number=\"12041\"></td>\n        <td id=\"LC12041\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[uint32Tag] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12042\" class=\"blob-num js-line-number\" data-line-number=\"12042\"></td>\n        <td id=\"LC12042\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[argsTag] <span class=\"pl-k\">=</span> typedArrayTags[arrayTag] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12043\" class=\"blob-num js-line-number\" data-line-number=\"12043\"></td>\n        <td id=\"LC12043\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[arrayBufferTag] <span class=\"pl-k\">=</span> typedArrayTags[boolTag] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12044\" class=\"blob-num js-line-number\" data-line-number=\"12044\"></td>\n        <td id=\"LC12044\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[dateTag] <span class=\"pl-k\">=</span> typedArrayTags[errorTag] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12045\" class=\"blob-num js-line-number\" data-line-number=\"12045\"></td>\n        <td id=\"LC12045\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[funcTag] <span class=\"pl-k\">=</span> typedArrayTags[mapTag] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12046\" class=\"blob-num js-line-number\" data-line-number=\"12046\"></td>\n        <td id=\"LC12046\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[numberTag] <span class=\"pl-k\">=</span> typedArrayTags[objectTag] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12047\" class=\"blob-num js-line-number\" data-line-number=\"12047\"></td>\n        <td id=\"LC12047\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[regexpTag] <span class=\"pl-k\">=</span> typedArrayTags[setTag] <span class=\"pl-k\">=</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12048\" class=\"blob-num js-line-number\" data-line-number=\"12048\"></td>\n        <td id=\"LC12048\" class=\"blob-code blob-code-inner js-file-line\">typedArrayTags[stringTag] <span class=\"pl-k\">=</span> typedArrayTags[weakMapTag] <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12049\" class=\"blob-num js-line-number\" data-line-number=\"12049\"></td>\n        <td id=\"LC12049\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12050\" class=\"blob-num js-line-number\" data-line-number=\"12050\"></td>\n        <td id=\"LC12050\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12051\" class=\"blob-num js-line-number\" data-line-number=\"12051\"></td>\n        <td id=\"LC12051\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12052\" class=\"blob-num js-line-number\" data-line-number=\"12052\"></td>\n        <td id=\"LC12052\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12053\" class=\"blob-num js-line-number\" data-line-number=\"12053\"></td>\n        <td id=\"LC12053\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12054\" class=\"blob-num js-line-number\" data-line-number=\"12054\"></td>\n        <td id=\"LC12054\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objToString <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">toString</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12055\" class=\"blob-num js-line-number\" data-line-number=\"12055\"></td>\n        <td id=\"LC12055\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12056\" class=\"blob-num js-line-number\" data-line-number=\"12056\"></td>\n        <td id=\"LC12056\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12057\" class=\"blob-num js-line-number\" data-line-number=\"12057\"></td>\n        <td id=\"LC12057\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">isTypedArray</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12058\" class=\"blob-num js-line-number\" data-line-number=\"12058\"></td>\n        <td id=\"LC12058\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (<span class=\"pl-en\">isObjectLike</span>(value) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isLength</span>(<span class=\"pl-smi\">value</span>.<span class=\"pl-c1\">length</span>) <span class=\"pl-k\">&amp;&amp;</span> typedArrayTags[<span class=\"pl-smi\">objToString</span>.<span class=\"pl-c1\">call</span>(value)]) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12059\" class=\"blob-num js-line-number\" data-line-number=\"12059\"></td>\n        <td id=\"LC12059\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L12060\" class=\"blob-num js-line-number\" data-line-number=\"12060\"></td>\n        <td id=\"LC12060\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12061\" class=\"blob-num js-line-number\" data-line-number=\"12061\"></td>\n        <td id=\"LC12061\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> isTypedArray;</td>\n      </tr>\n      <tr>\n        <td id=\"L12062\" class=\"blob-num js-line-number\" data-line-number=\"12062\"></td>\n        <td id=\"LC12062\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12063\" class=\"blob-num js-line-number\" data-line-number=\"12063\"></td>\n        <td id=\"LC12063\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isLength<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">110</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isObjectLike<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">111</span>}],<span class=\"pl-c1\">124</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L12064\" class=\"blob-num js-line-number\" data-line-number=\"12064\"></td>\n        <td id=\"LC12064\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseAssign <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/baseAssign<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12065\" class=\"blob-num js-line-number\" data-line-number=\"12065\"></td>\n        <td id=\"LC12065\" class=\"blob-code blob-code-inner js-file-line\">    createAssigner <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/createAssigner<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L12066\" class=\"blob-num js-line-number\" data-line-number=\"12066\"></td>\n        <td id=\"LC12066\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12067\" class=\"blob-num js-line-number\" data-line-number=\"12067\"></td>\n        <td id=\"LC12067\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12068\" class=\"blob-num js-line-number\" data-line-number=\"12068\"></td>\n        <td id=\"LC12068\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> assign <span class=\"pl-k\">=</span> <span class=\"pl-en\">createAssigner</span>(baseAssign);</td>\n      </tr>\n      <tr>\n        <td id=\"L12069\" class=\"blob-num js-line-number\" data-line-number=\"12069\"></td>\n        <td id=\"LC12069\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12070\" class=\"blob-num js-line-number\" data-line-number=\"12070\"></td>\n        <td id=\"LC12070\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> assign;</td>\n      </tr>\n      <tr>\n        <td id=\"L12071\" class=\"blob-num js-line-number\" data-line-number=\"12071\"></td>\n        <td id=\"LC12071\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12072\" class=\"blob-num js-line-number\" data-line-number=\"12072\"></td>\n        <td id=\"LC12072\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/baseAssign<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">85</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/createAssigner<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">103</span>}],<span class=\"pl-c1\">125</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L12073\" class=\"blob-num js-line-number\" data-line-number=\"12073\"></td>\n        <td id=\"LC12073\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseCopy <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/baseCopy<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12074\" class=\"blob-num js-line-number\" data-line-number=\"12074\"></td>\n        <td id=\"LC12074\" class=\"blob-code blob-code-inner js-file-line\">    baseCreate <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/baseCreate<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12075\" class=\"blob-num js-line-number\" data-line-number=\"12075\"></td>\n        <td id=\"LC12075\" class=\"blob-code blob-code-inner js-file-line\">    isIterateeCall <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isIterateeCall<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12076\" class=\"blob-num js-line-number\" data-line-number=\"12076\"></td>\n        <td id=\"LC12076\" class=\"blob-code blob-code-inner js-file-line\">    keys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./keys<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L12077\" class=\"blob-num js-line-number\" data-line-number=\"12077\"></td>\n        <td id=\"LC12077\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12078\" class=\"blob-num js-line-number\" data-line-number=\"12078\"></td>\n        <td id=\"LC12078\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12079\" class=\"blob-num js-line-number\" data-line-number=\"12079\"></td>\n        <td id=\"LC12079\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">create</span>(<span class=\"pl-smi\">prototype</span>, <span class=\"pl-smi\">properties</span>, <span class=\"pl-smi\">guard</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12080\" class=\"blob-num js-line-number\" data-line-number=\"12080\"></td>\n        <td id=\"LC12080\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> result <span class=\"pl-k\">=</span> <span class=\"pl-en\">baseCreate</span>(prototype);</td>\n      </tr>\n      <tr>\n        <td id=\"L12081\" class=\"blob-num js-line-number\" data-line-number=\"12081\"></td>\n        <td id=\"LC12081\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (guard <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isIterateeCall</span>(prototype, properties, guard)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12082\" class=\"blob-num js-line-number\" data-line-number=\"12082\"></td>\n        <td id=\"LC12082\" class=\"blob-code blob-code-inner js-file-line\">    properties <span class=\"pl-k\">=</span> <span class=\"pl-c1\">null</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12083\" class=\"blob-num js-line-number\" data-line-number=\"12083\"></td>\n        <td id=\"LC12083\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L12084\" class=\"blob-num js-line-number\" data-line-number=\"12084\"></td>\n        <td id=\"LC12084\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> properties <span class=\"pl-k\">?</span> <span class=\"pl-en\">baseCopy</span>(properties, result, <span class=\"pl-en\">keys</span>(properties)) <span class=\"pl-k\">:</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L12085\" class=\"blob-num js-line-number\" data-line-number=\"12085\"></td>\n        <td id=\"LC12085\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L12086\" class=\"blob-num js-line-number\" data-line-number=\"12086\"></td>\n        <td id=\"LC12086\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12087\" class=\"blob-num js-line-number\" data-line-number=\"12087\"></td>\n        <td id=\"LC12087\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> create;</td>\n      </tr>\n      <tr>\n        <td id=\"L12088\" class=\"blob-num js-line-number\" data-line-number=\"12088\"></td>\n        <td id=\"LC12088\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12089\" class=\"blob-num js-line-number\" data-line-number=\"12089\"></td>\n        <td id=\"LC12089\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/baseCopy<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">87</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/baseCreate<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">88</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isIterateeCall<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">109</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./keys<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">126</span>}],<span class=\"pl-c1\">126</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L12090\" class=\"blob-num js-line-number\" data-line-number=\"12090\"></td>\n        <td id=\"LC12090\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isLength <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isLength<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12091\" class=\"blob-num js-line-number\" data-line-number=\"12091\"></td>\n        <td id=\"LC12091\" class=\"blob-code blob-code-inner js-file-line\">    isNative <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isNative<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12092\" class=\"blob-num js-line-number\" data-line-number=\"12092\"></td>\n        <td id=\"LC12092\" class=\"blob-code blob-code-inner js-file-line\">    isObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isObject<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12093\" class=\"blob-num js-line-number\" data-line-number=\"12093\"></td>\n        <td id=\"LC12093\" class=\"blob-code blob-code-inner js-file-line\">    shimKeys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/shimKeys<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L12094\" class=\"blob-num js-line-number\" data-line-number=\"12094\"></td>\n        <td id=\"LC12094\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12095\" class=\"blob-num js-line-number\" data-line-number=\"12095\"></td>\n        <td id=\"LC12095\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12096\" class=\"blob-num js-line-number\" data-line-number=\"12096\"></td>\n        <td id=\"LC12096\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> nativeKeys <span class=\"pl-k\">=</span> <span class=\"pl-en\">isNative</span>(nativeKeys <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-smi\">keys</span>) <span class=\"pl-k\">&amp;&amp;</span> nativeKeys;</td>\n      </tr>\n      <tr>\n        <td id=\"L12097\" class=\"blob-num js-line-number\" data-line-number=\"12097\"></td>\n        <td id=\"LC12097\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12098\" class=\"blob-num js-line-number\" data-line-number=\"12098\"></td>\n        <td id=\"LC12098\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12099\" class=\"blob-num js-line-number\" data-line-number=\"12099\"></td>\n        <td id=\"LC12099\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> keys <span class=\"pl-k\">=</span> <span class=\"pl-k\">!</span>nativeKeys <span class=\"pl-k\">?</span> <span class=\"pl-en\">shimKeys</span> <span class=\"pl-k\">:</span> <span class=\"pl-k\">function</span>(<span class=\"pl-smi\">object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12100\" class=\"blob-num js-line-number\" data-line-number=\"12100\"></td>\n        <td id=\"LC12100\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (object) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12101\" class=\"blob-num js-line-number\" data-line-number=\"12101\"></td>\n        <td id=\"LC12101\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">var</span> Ctor <span class=\"pl-k\">=</span> <span class=\"pl-smi\">object</span>.<span class=\"pl-c1\">constructor</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12102\" class=\"blob-num js-line-number\" data-line-number=\"12102\"></td>\n        <td id=\"LC12102\" class=\"blob-code blob-code-inner js-file-line\">        length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">object</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12103\" class=\"blob-num js-line-number\" data-line-number=\"12103\"></td>\n        <td id=\"LC12103\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L12104\" class=\"blob-num js-line-number\" data-line-number=\"12104\"></td>\n        <td id=\"LC12104\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> ((<span class=\"pl-k\">typeof</span> Ctor <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">Ctor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">===</span> object) <span class=\"pl-k\">||</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12105\" class=\"blob-num js-line-number\" data-line-number=\"12105\"></td>\n        <td id=\"LC12105\" class=\"blob-code blob-code-inner js-file-line\">      (<span class=\"pl-k\">typeof</span> object <span class=\"pl-k\">!=</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> (length <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isLength</span>(length)))) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12106\" class=\"blob-num js-line-number\" data-line-number=\"12106\"></td>\n        <td id=\"LC12106\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> <span class=\"pl-en\">shimKeys</span>(object);</td>\n      </tr>\n      <tr>\n        <td id=\"L12107\" class=\"blob-num js-line-number\" data-line-number=\"12107\"></td>\n        <td id=\"LC12107\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L12108\" class=\"blob-num js-line-number\" data-line-number=\"12108\"></td>\n        <td id=\"LC12108\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> <span class=\"pl-en\">isObject</span>(object) <span class=\"pl-k\">?</span> <span class=\"pl-en\">nativeKeys</span>(object) <span class=\"pl-k\">:</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L12109\" class=\"blob-num js-line-number\" data-line-number=\"12109\"></td>\n        <td id=\"LC12109\" class=\"blob-code blob-code-inner js-file-line\">};</td>\n      </tr>\n      <tr>\n        <td id=\"L12110\" class=\"blob-num js-line-number\" data-line-number=\"12110\"></td>\n        <td id=\"LC12110\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12111\" class=\"blob-num js-line-number\" data-line-number=\"12111\"></td>\n        <td id=\"LC12111\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> keys;</td>\n      </tr>\n      <tr>\n        <td id=\"L12112\" class=\"blob-num js-line-number\" data-line-number=\"12112\"></td>\n        <td id=\"LC12112\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12113\" class=\"blob-num js-line-number\" data-line-number=\"12113\"></td>\n        <td id=\"LC12113\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isLength<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">110</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/shimKeys<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">114</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isNative<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">120</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">121</span>}],<span class=\"pl-c1\">127</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L12114\" class=\"blob-num js-line-number\" data-line-number=\"12114\"></td>\n        <td id=\"LC12114\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isArguments <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isArguments<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12115\" class=\"blob-num js-line-number\" data-line-number=\"12115\"></td>\n        <td id=\"LC12115\" class=\"blob-code blob-code-inner js-file-line\">    isArray <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isArray<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12116\" class=\"blob-num js-line-number\" data-line-number=\"12116\"></td>\n        <td id=\"LC12116\" class=\"blob-code blob-code-inner js-file-line\">    isIndex <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isIndex<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12117\" class=\"blob-num js-line-number\" data-line-number=\"12117\"></td>\n        <td id=\"LC12117\" class=\"blob-code blob-code-inner js-file-line\">    isLength <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/isLength<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12118\" class=\"blob-num js-line-number\" data-line-number=\"12118\"></td>\n        <td id=\"LC12118\" class=\"blob-code blob-code-inner js-file-line\">    isObject <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../lang/isObject<span class=\"pl-pds\">&#39;</span></span>),</td>\n      </tr>\n      <tr>\n        <td id=\"L12119\" class=\"blob-num js-line-number\" data-line-number=\"12119\"></td>\n        <td id=\"LC12119\" class=\"blob-code blob-code-inner js-file-line\">    support <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../support<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L12120\" class=\"blob-num js-line-number\" data-line-number=\"12120\"></td>\n        <td id=\"LC12120\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12121\" class=\"blob-num js-line-number\" data-line-number=\"12121\"></td>\n        <td id=\"LC12121\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12122\" class=\"blob-num js-line-number\" data-line-number=\"12122\"></td>\n        <td id=\"LC12122\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12123\" class=\"blob-num js-line-number\" data-line-number=\"12123\"></td>\n        <td id=\"LC12123\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12124\" class=\"blob-num js-line-number\" data-line-number=\"12124\"></td>\n        <td id=\"LC12124\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12125\" class=\"blob-num js-line-number\" data-line-number=\"12125\"></td>\n        <td id=\"LC12125\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> hasOwnProperty <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">hasOwnProperty</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12126\" class=\"blob-num js-line-number\" data-line-number=\"12126\"></td>\n        <td id=\"LC12126\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12127\" class=\"blob-num js-line-number\" data-line-number=\"12127\"></td>\n        <td id=\"LC12127\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12128\" class=\"blob-num js-line-number\" data-line-number=\"12128\"></td>\n        <td id=\"LC12128\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">keysIn</span>(<span class=\"pl-smi\">object</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12129\" class=\"blob-num js-line-number\" data-line-number=\"12129\"></td>\n        <td id=\"LC12129\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (object <span class=\"pl-k\">==</span> <span class=\"pl-c1\">null</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12130\" class=\"blob-num js-line-number\" data-line-number=\"12130\"></td>\n        <td id=\"LC12130\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">return</span> [];</td>\n      </tr>\n      <tr>\n        <td id=\"L12131\" class=\"blob-num js-line-number\" data-line-number=\"12131\"></td>\n        <td id=\"LC12131\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L12132\" class=\"blob-num js-line-number\" data-line-number=\"12132\"></td>\n        <td id=\"LC12132\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span><span class=\"pl-en\">isObject</span>(object)) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12133\" class=\"blob-num js-line-number\" data-line-number=\"12133\"></td>\n        <td id=\"LC12133\" class=\"blob-code blob-code-inner js-file-line\">    object <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>(object);</td>\n      </tr>\n      <tr>\n        <td id=\"L12134\" class=\"blob-num js-line-number\" data-line-number=\"12134\"></td>\n        <td id=\"LC12134\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L12135\" class=\"blob-num js-line-number\" data-line-number=\"12135\"></td>\n        <td id=\"LC12135\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> length <span class=\"pl-k\">=</span> <span class=\"pl-smi\">object</span>.<span class=\"pl-c1\">length</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12136\" class=\"blob-num js-line-number\" data-line-number=\"12136\"></td>\n        <td id=\"LC12136\" class=\"blob-code blob-code-inner js-file-line\">  length <span class=\"pl-k\">=</span> (length <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isLength</span>(length) <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12137\" class=\"blob-num js-line-number\" data-line-number=\"12137\"></td>\n        <td id=\"LC12137\" class=\"blob-code blob-code-inner js-file-line\">    (<span class=\"pl-en\">isArray</span>(object) <span class=\"pl-k\">||</span> (<span class=\"pl-smi\">support</span>.<span class=\"pl-smi\">nonEnumArgs</span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isArguments</span>(object))) <span class=\"pl-k\">&amp;&amp;</span> length) <span class=\"pl-k\">||</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12138\" class=\"blob-num js-line-number\" data-line-number=\"12138\"></td>\n        <td id=\"LC12138\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12139\" class=\"blob-num js-line-number\" data-line-number=\"12139\"></td>\n        <td id=\"LC12139\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">var</span> Ctor <span class=\"pl-k\">=</span> <span class=\"pl-smi\">object</span>.<span class=\"pl-c1\">constructor</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12140\" class=\"blob-num js-line-number\" data-line-number=\"12140\"></td>\n        <td id=\"LC12140\" class=\"blob-code blob-code-inner js-file-line\">      index <span class=\"pl-k\">=</span> <span class=\"pl-k\">-</span><span class=\"pl-c1\">1</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12141\" class=\"blob-num js-line-number\" data-line-number=\"12141\"></td>\n        <td id=\"LC12141\" class=\"blob-code blob-code-inner js-file-line\">      isProto <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> Ctor <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>function<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">Ctor</span>.<span class=\"pl-c1\">prototype</span> <span class=\"pl-k\">===</span> object,</td>\n      </tr>\n      <tr>\n        <td id=\"L12142\" class=\"blob-num js-line-number\" data-line-number=\"12142\"></td>\n        <td id=\"LC12142\" class=\"blob-code blob-code-inner js-file-line\">      result <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Array</span>(length),</td>\n      </tr>\n      <tr>\n        <td id=\"L12143\" class=\"blob-num js-line-number\" data-line-number=\"12143\"></td>\n        <td id=\"LC12143\" class=\"blob-code blob-code-inner js-file-line\">      skipIndexes <span class=\"pl-k\">=</span> length <span class=\"pl-k\">&gt;</span> <span class=\"pl-c1\">0</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12144\" class=\"blob-num js-line-number\" data-line-number=\"12144\"></td>\n        <td id=\"LC12144\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12145\" class=\"blob-num js-line-number\" data-line-number=\"12145\"></td>\n        <td id=\"LC12145\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">while</span> (<span class=\"pl-k\">++</span>index <span class=\"pl-k\">&lt;</span> length) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12146\" class=\"blob-num js-line-number\" data-line-number=\"12146\"></td>\n        <td id=\"LC12146\" class=\"blob-code blob-code-inner js-file-line\">    result[index] <span class=\"pl-k\">=</span> (index <span class=\"pl-k\">+</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L12147\" class=\"blob-num js-line-number\" data-line-number=\"12147\"></td>\n        <td id=\"LC12147\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L12148\" class=\"blob-num js-line-number\" data-line-number=\"12148\"></td>\n        <td id=\"LC12148\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">for</span> (<span class=\"pl-k\">var</span> key <span class=\"pl-k\">in</span> object) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12149\" class=\"blob-num js-line-number\" data-line-number=\"12149\"></td>\n        <td id=\"LC12149\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">if</span> (<span class=\"pl-k\">!</span>(skipIndexes <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-en\">isIndex</span>(key, length)) <span class=\"pl-k\">&amp;&amp;</span></td>\n      </tr>\n      <tr>\n        <td id=\"L12150\" class=\"blob-num js-line-number\" data-line-number=\"12150\"></td>\n        <td id=\"LC12150\" class=\"blob-code blob-code-inner js-file-line\">        <span class=\"pl-k\">!</span>(key <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>constructor<span class=\"pl-pds\">&#39;</span></span> <span class=\"pl-k\">&amp;&amp;</span> (isProto <span class=\"pl-k\">||</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">hasOwnProperty</span>.<span class=\"pl-c1\">call</span>(object, key)))) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12151\" class=\"blob-num js-line-number\" data-line-number=\"12151\"></td>\n        <td id=\"LC12151\" class=\"blob-code blob-code-inner js-file-line\">      <span class=\"pl-smi\">result</span>.<span class=\"pl-c1\">push</span>(key);</td>\n      </tr>\n      <tr>\n        <td id=\"L12152\" class=\"blob-num js-line-number\" data-line-number=\"12152\"></td>\n        <td id=\"LC12152\" class=\"blob-code blob-code-inner js-file-line\">    }</td>\n      </tr>\n      <tr>\n        <td id=\"L12153\" class=\"blob-num js-line-number\" data-line-number=\"12153\"></td>\n        <td id=\"LC12153\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L12154\" class=\"blob-num js-line-number\" data-line-number=\"12154\"></td>\n        <td id=\"LC12154\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> result;</td>\n      </tr>\n      <tr>\n        <td id=\"L12155\" class=\"blob-num js-line-number\" data-line-number=\"12155\"></td>\n        <td id=\"LC12155\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L12156\" class=\"blob-num js-line-number\" data-line-number=\"12156\"></td>\n        <td id=\"LC12156\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12157\" class=\"blob-num js-line-number\" data-line-number=\"12157\"></td>\n        <td id=\"LC12157\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> keysIn;</td>\n      </tr>\n      <tr>\n        <td id=\"L12158\" class=\"blob-num js-line-number\" data-line-number=\"12158\"></td>\n        <td id=\"LC12158\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12159\" class=\"blob-num js-line-number\" data-line-number=\"12159\"></td>\n        <td id=\"LC12159\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isIndex<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">108</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/isLength<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">110</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isArguments<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">116</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isArray<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">117</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../lang/isObject<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">121</span>,<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../support<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">129</span>}],<span class=\"pl-c1\">128</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L12160\" class=\"blob-num js-line-number\" data-line-number=\"12160\"></td>\n        <td id=\"LC12160\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> baseToString <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>../internal/baseToString<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L12161\" class=\"blob-num js-line-number\" data-line-number=\"12161\"></td>\n        <td id=\"LC12161\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12162\" class=\"blob-num js-line-number\" data-line-number=\"12162\"></td>\n        <td id=\"LC12162\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12163\" class=\"blob-num js-line-number\" data-line-number=\"12163\"></td>\n        <td id=\"LC12163\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> reRegExpChars <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-c1\">[<span class=\"pl-c1\">.</span>*+?^${}()|[<span class=\"pl-cce\">\\]\\/\\\\</span>]</span><span class=\"pl-pds\">/</span>g</span>,</td>\n      </tr>\n      <tr>\n        <td id=\"L12164\" class=\"blob-num js-line-number\" data-line-number=\"12164\"></td>\n        <td id=\"LC12164\" class=\"blob-code blob-code-inner js-file-line\">    reHasRegExpChars <span class=\"pl-k\">=</span> <span class=\"pl-c1\">RegExp</span>(<span class=\"pl-smi\">reRegExpChars</span>.<span class=\"pl-c1\">source</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L12165\" class=\"blob-num js-line-number\" data-line-number=\"12165\"></td>\n        <td id=\"LC12165\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12166\" class=\"blob-num js-line-number\" data-line-number=\"12166\"></td>\n        <td id=\"LC12166\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12167\" class=\"blob-num js-line-number\" data-line-number=\"12167\"></td>\n        <td id=\"LC12167\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">escapeRegExp</span>(<span class=\"pl-smi\">string</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12168\" class=\"blob-num js-line-number\" data-line-number=\"12168\"></td>\n        <td id=\"LC12168\" class=\"blob-code blob-code-inner js-file-line\">  string <span class=\"pl-k\">=</span> <span class=\"pl-en\">baseToString</span>(string);</td>\n      </tr>\n      <tr>\n        <td id=\"L12169\" class=\"blob-num js-line-number\" data-line-number=\"12169\"></td>\n        <td id=\"LC12169\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> (string <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">reHasRegExpChars</span>.<span class=\"pl-c1\">test</span>(string))</td>\n      </tr>\n      <tr>\n        <td id=\"L12170\" class=\"blob-num js-line-number\" data-line-number=\"12170\"></td>\n        <td id=\"LC12170\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">?</span> <span class=\"pl-smi\">string</span>.<span class=\"pl-c1\">replace</span>(reRegExpChars, <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span><span class=\"pl-cce\">\\\\</span>$&amp;<span class=\"pl-pds\">&#39;</span></span>)</td>\n      </tr>\n      <tr>\n        <td id=\"L12171\" class=\"blob-num js-line-number\" data-line-number=\"12171\"></td>\n        <td id=\"LC12171\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-k\">:</span> string;</td>\n      </tr>\n      <tr>\n        <td id=\"L12172\" class=\"blob-num js-line-number\" data-line-number=\"12172\"></td>\n        <td id=\"LC12172\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L12173\" class=\"blob-num js-line-number\" data-line-number=\"12173\"></td>\n        <td id=\"LC12173\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12174\" class=\"blob-num js-line-number\" data-line-number=\"12174\"></td>\n        <td id=\"LC12174\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> escapeRegExp;</td>\n      </tr>\n      <tr>\n        <td id=\"L12175\" class=\"blob-num js-line-number\" data-line-number=\"12175\"></td>\n        <td id=\"LC12175\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12176\" class=\"blob-num js-line-number\" data-line-number=\"12176\"></td>\n        <td id=\"LC12176\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>../internal/baseToString<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">101</span>}],<span class=\"pl-c1\">129</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L12177\" class=\"blob-num js-line-number\" data-line-number=\"12177\"></td>\n        <td id=\"LC12177\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span> (<span class=\"pl-c1\">global</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L12178\" class=\"blob-num js-line-number\" data-line-number=\"12178\"></td>\n        <td id=\"LC12178\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> isNative <span class=\"pl-k\">=</span> <span class=\"pl-c1\">require</span>(<span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>./lang/isNative<span class=\"pl-pds\">&#39;</span></span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L12179\" class=\"blob-num js-line-number\" data-line-number=\"12179\"></td>\n        <td id=\"LC12179\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12180\" class=\"blob-num js-line-number\" data-line-number=\"12180\"></td>\n        <td id=\"LC12180\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12181\" class=\"blob-num js-line-number\" data-line-number=\"12181\"></td>\n        <td id=\"LC12181\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> reThis <span class=\"pl-k\">=</span><span class=\"pl-sr\"> <span class=\"pl-pds\">/</span><span class=\"pl-k\">\\b</span>this<span class=\"pl-k\">\\b</span><span class=\"pl-pds\">/</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12182\" class=\"blob-num js-line-number\" data-line-number=\"12182\"></td>\n        <td id=\"LC12182\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12183\" class=\"blob-num js-line-number\" data-line-number=\"12183\"></td>\n        <td id=\"LC12183\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12184\" class=\"blob-num js-line-number\" data-line-number=\"12184\"></td>\n        <td id=\"LC12184\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> objectProto <span class=\"pl-k\">=</span> <span class=\"pl-c1\">Object</span>.<span class=\"pl-c1\">prototype</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12185\" class=\"blob-num js-line-number\" data-line-number=\"12185\"></td>\n        <td id=\"LC12185\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12186\" class=\"blob-num js-line-number\" data-line-number=\"12186\"></td>\n        <td id=\"LC12186\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12187\" class=\"blob-num js-line-number\" data-line-number=\"12187\"></td>\n        <td id=\"LC12187\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> <span class=\"pl-c1\">document</span> <span class=\"pl-k\">=</span> (<span class=\"pl-c1\">document</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">global</span>.<span class=\"pl-smi\">window</span>) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-c1\">document</span>.<span class=\"pl-smi\">document</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12188\" class=\"blob-num js-line-number\" data-line-number=\"12188\"></td>\n        <td id=\"LC12188\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12189\" class=\"blob-num js-line-number\" data-line-number=\"12189\"></td>\n        <td id=\"LC12189\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12190\" class=\"blob-num js-line-number\" data-line-number=\"12190\"></td>\n        <td id=\"LC12190\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> propertyIsEnumerable <span class=\"pl-k\">=</span> <span class=\"pl-smi\">objectProto</span>.<span class=\"pl-smi\">propertyIsEnumerable</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12191\" class=\"blob-num js-line-number\" data-line-number=\"12191\"></td>\n        <td id=\"LC12191\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12192\" class=\"blob-num js-line-number\" data-line-number=\"12192\"></td>\n        <td id=\"LC12192\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12193\" class=\"blob-num js-line-number\" data-line-number=\"12193\"></td>\n        <td id=\"LC12193\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">var</span> support <span class=\"pl-k\">=</span> {};</td>\n      </tr>\n      <tr>\n        <td id=\"L12194\" class=\"blob-num js-line-number\" data-line-number=\"12194\"></td>\n        <td id=\"LC12194\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12195\" class=\"blob-num js-line-number\" data-line-number=\"12195\"></td>\n        <td id=\"LC12195\" class=\"blob-code blob-code-inner js-file-line\">(<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">x</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12196\" class=\"blob-num js-line-number\" data-line-number=\"12196\"></td>\n        <td id=\"LC12196\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12197\" class=\"blob-num js-line-number\" data-line-number=\"12197\"></td>\n        <td id=\"LC12197\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12198\" class=\"blob-num js-line-number\" data-line-number=\"12198\"></td>\n        <td id=\"LC12198\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">support</span>.<span class=\"pl-smi\">funcDecomp</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">!</span><span class=\"pl-en\">isNative</span>(<span class=\"pl-c1\">global</span>.<span class=\"pl-smi\">WinRTError</span>) <span class=\"pl-k\">&amp;&amp;</span> <span class=\"pl-smi\">reThis</span>.<span class=\"pl-c1\">test</span>(<span class=\"pl-k\">function</span>() { <span class=\"pl-k\">return</span> <span class=\"pl-v\">this</span>; });</td>\n      </tr>\n      <tr>\n        <td id=\"L12199\" class=\"blob-num js-line-number\" data-line-number=\"12199\"></td>\n        <td id=\"LC12199\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12200\" class=\"blob-num js-line-number\" data-line-number=\"12200\"></td>\n        <td id=\"LC12200\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12201\" class=\"blob-num js-line-number\" data-line-number=\"12201\"></td>\n        <td id=\"LC12201\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-smi\">support</span>.<span class=\"pl-smi\">funcNames</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">Function</span>.<span class=\"pl-c1\">name</span> <span class=\"pl-k\">==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&#39;</span>string<span class=\"pl-pds\">&#39;</span></span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12202\" class=\"blob-num js-line-number\" data-line-number=\"12202\"></td>\n        <td id=\"LC12202\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12203\" class=\"blob-num js-line-number\" data-line-number=\"12203\"></td>\n        <td id=\"LC12203\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12204\" class=\"blob-num js-line-number\" data-line-number=\"12204\"></td>\n        <td id=\"LC12204\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L12205\" class=\"blob-num js-line-number\" data-line-number=\"12205\"></td>\n        <td id=\"LC12205\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">support</span>.<span class=\"pl-smi\">dom</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">document</span>.<span class=\"pl-c1\">createDocumentFragment</span>().<span class=\"pl-c1\">nodeType</span> <span class=\"pl-k\">===</span> <span class=\"pl-c1\">11</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12206\" class=\"blob-num js-line-number\" data-line-number=\"12206\"></td>\n        <td id=\"LC12206\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">catch</span>(e) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12207\" class=\"blob-num js-line-number\" data-line-number=\"12207\"></td>\n        <td id=\"LC12207\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">support</span>.<span class=\"pl-smi\">dom</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">false</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12208\" class=\"blob-num js-line-number\" data-line-number=\"12208\"></td>\n        <td id=\"LC12208\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L12209\" class=\"blob-num js-line-number\" data-line-number=\"12209\"></td>\n        <td id=\"LC12209\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12210\" class=\"blob-num js-line-number\" data-line-number=\"12210\"></td>\n        <td id=\"LC12210\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12211\" class=\"blob-num js-line-number\" data-line-number=\"12211\"></td>\n        <td id=\"LC12211\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">try</span> {</td>\n      </tr>\n      <tr>\n        <td id=\"L12212\" class=\"blob-num js-line-number\" data-line-number=\"12212\"></td>\n        <td id=\"LC12212\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">support</span>.<span class=\"pl-smi\">nonEnumArgs</span> <span class=\"pl-k\">=</span> <span class=\"pl-k\">!</span><span class=\"pl-smi\">propertyIsEnumerable</span>.<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">arguments</span>, <span class=\"pl-c1\">1</span>);</td>\n      </tr>\n      <tr>\n        <td id=\"L12213\" class=\"blob-num js-line-number\" data-line-number=\"12213\"></td>\n        <td id=\"LC12213\" class=\"blob-code blob-code-inner js-file-line\">  } <span class=\"pl-k\">catch</span>(e) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12214\" class=\"blob-num js-line-number\" data-line-number=\"12214\"></td>\n        <td id=\"LC12214\" class=\"blob-code blob-code-inner js-file-line\">    <span class=\"pl-smi\">support</span>.<span class=\"pl-smi\">nonEnumArgs</span> <span class=\"pl-k\">=</span> <span class=\"pl-c1\">true</span>;</td>\n      </tr>\n      <tr>\n        <td id=\"L12215\" class=\"blob-num js-line-number\" data-line-number=\"12215\"></td>\n        <td id=\"LC12215\" class=\"blob-code blob-code-inner js-file-line\">  }</td>\n      </tr>\n      <tr>\n        <td id=\"L12216\" class=\"blob-num js-line-number\" data-line-number=\"12216\"></td>\n        <td id=\"LC12216\" class=\"blob-code blob-code-inner js-file-line\">}(<span class=\"pl-c1\">0</span>, <span class=\"pl-c1\">0</span>));</td>\n      </tr>\n      <tr>\n        <td id=\"L12217\" class=\"blob-num js-line-number\" data-line-number=\"12217\"></td>\n        <td id=\"LC12217\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12218\" class=\"blob-num js-line-number\" data-line-number=\"12218\"></td>\n        <td id=\"LC12218\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> support;</td>\n      </tr>\n      <tr>\n        <td id=\"L12219\" class=\"blob-num js-line-number\" data-line-number=\"12219\"></td>\n        <td id=\"LC12219\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12220\" class=\"blob-num js-line-number\" data-line-number=\"12220\"></td>\n        <td id=\"LC12220\" class=\"blob-code blob-code-inner js-file-line\">}).<span class=\"pl-c1\">call</span>(<span class=\"pl-v\">this</span>,<span class=\"pl-k\">typeof</span> self <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> self <span class=\"pl-k\">:</span> <span class=\"pl-k\">typeof</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">!==</span> <span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>undefined<span class=\"pl-pds\">&quot;</span></span> <span class=\"pl-k\">?</span> <span class=\"pl-c1\">window</span> <span class=\"pl-k\">:</span> {})</td>\n      </tr>\n      <tr>\n        <td id=\"L12221\" class=\"blob-num js-line-number\" data-line-number=\"12221\"></td>\n        <td id=\"LC12221\" class=\"blob-code blob-code-inner js-file-line\">},{<span class=\"pl-s\"><span class=\"pl-pds\">&quot;</span>./lang/isNative<span class=\"pl-pds\">&quot;</span></span><span class=\"pl-k\">:</span><span class=\"pl-c1\">120</span>}],<span class=\"pl-c1\">130</span><span class=\"pl-k\">:</span>[<span class=\"pl-k\">function</span>(<span class=\"pl-smi\">require</span>,<span class=\"pl-c1\">module</span>,<span class=\"pl-c1\">exports</span>){</td>\n      </tr>\n      <tr>\n        <td id=\"L12222\" class=\"blob-num js-line-number\" data-line-number=\"12222\"></td>\n        <td id=\"LC12222\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12223\" class=\"blob-num js-line-number\" data-line-number=\"12223\"></td>\n        <td id=\"LC12223\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-k\">function</span> <span class=\"pl-en\">identity</span>(<span class=\"pl-smi\">value</span>) {</td>\n      </tr>\n      <tr>\n        <td id=\"L12224\" class=\"blob-num js-line-number\" data-line-number=\"12224\"></td>\n        <td id=\"LC12224\" class=\"blob-code blob-code-inner js-file-line\">  <span class=\"pl-k\">return</span> value;</td>\n      </tr>\n      <tr>\n        <td id=\"L12225\" class=\"blob-num js-line-number\" data-line-number=\"12225\"></td>\n        <td id=\"LC12225\" class=\"blob-code blob-code-inner js-file-line\">}</td>\n      </tr>\n      <tr>\n        <td id=\"L12226\" class=\"blob-num js-line-number\" data-line-number=\"12226\"></td>\n        <td id=\"LC12226\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12227\" class=\"blob-num js-line-number\" data-line-number=\"12227\"></td>\n        <td id=\"LC12227\" class=\"blob-code blob-code-inner js-file-line\"><span class=\"pl-c1\">module</span>.<span class=\"pl-smi\">exports</span> <span class=\"pl-k\">=</span> identity;</td>\n      </tr>\n      <tr>\n        <td id=\"L12228\" class=\"blob-num js-line-number\" data-line-number=\"12228\"></td>\n        <td id=\"LC12228\" class=\"blob-code blob-code-inner js-file-line\">\n</td>\n      </tr>\n      <tr>\n        <td id=\"L12229\" class=\"blob-num js-line-number\" data-line-number=\"12229\"></td>\n        <td id=\"LC12229\" class=\"blob-code blob-code-inner js-file-line\">},{}]},{},[<span class=\"pl-c1\">1</span>])</td>\n      </tr>\n</table>\n\n  </div>\n\n</div>\n\n<button type=\"button\" data-facebox=\"#jump-to-line\" data-facebox-class=\"linejump\" data-hotkey=\"l\" class=\"hidden\">Jump to Line</button>\n<div id=\"jump-to-line\" style=\"display:none\">\n  <!-- </textarea> --><!-- '\"` --><form accept-charset=\"UTF-8\" action=\"\" class=\"js-jump-to-line-form\" method=\"get\"><div style=\"margin:0;padding:0;display:inline\"><input name=\"utf8\" type=\"hidden\" value=\"&#x2713;\" /></div>\n    <input class=\"form-control linejump-input js-jump-to-line-field\" type=\"text\" placeholder=\"Jump to line&hellip;\" aria-label=\"Jump to line\" autofocus>\n    <button type=\"submit\" class=\"btn\">Go</button>\n</form></div>\n\n  </div>\n  <div class=\"modal-backdrop\"></div>\n</div>\n\n\n    </div>\n  </div>\n\n    </div>\n\n        <div class=\"container site-footer-container\">\n  <div class=\"site-footer\" role=\"contentinfo\">\n    <ul class=\"site-footer-links right\">\n        <li><a href=\"https://status.github.com/\" data-ga-click=\"Footer, go to status, text:status\">Status</a></li>\n      <li><a href=\"https://developer.github.com\" data-ga-click=\"Footer, go to api, text:api\">API</a></li>\n      <li><a href=\"https://training.github.com\" data-ga-click=\"Footer, go to training, text:training\">Training</a></li>\n      <li><a href=\"https://shop.github.com\" data-ga-click=\"Footer, go to shop, text:shop\">Shop</a></li>\n        <li><a href=\"https://github.com/blog\" data-ga-click=\"Footer, go to blog, text:blog\">Blog</a></li>\n        <li><a href=\"https://github.com/about\" data-ga-click=\"Footer, go to about, text:about\">About</a></li>\n\n    </ul>\n\n    <a href=\"https://github.com\" aria-label=\"Homepage\" class=\"site-footer-mark\" title=\"GitHub\">\n      <svg aria-hidden=\"true\" class=\"octicon octicon-mark-github\" height=\"24\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"24\"><path d=\"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0 0 16 8c0-4.42-3.58-8-8-8z\"></path></svg>\n</a>\n    <ul class=\"site-footer-links\">\n      <li>&copy; 2016 <span title=\"0.40217s from github-fe147-cp1-prd.iad.github.net\">GitHub</span>, Inc.</li>\n        <li><a href=\"https://github.com/site/terms\" data-ga-click=\"Footer, go to terms, text:terms\">Terms</a></li>\n        <li><a href=\"https://github.com/site/privacy\" data-ga-click=\"Footer, go to privacy, text:privacy\">Privacy</a></li>\n        <li><a href=\"https://github.com/security\" data-ga-click=\"Footer, go to security, text:security\">Security</a></li>\n        <li><a href=\"https://github.com/contact\" data-ga-click=\"Footer, go to contact, text:contact\">Contact</a></li>\n        <li><a href=\"https://help.github.com\" data-ga-click=\"Footer, go to help, text:help\">Help</a></li>\n    </ul>\n  </div>\n</div>\n\n\n\n    \n\n    <div id=\"ajax-error-message\" class=\"ajax-error-message flash flash-error\">\n      <svg aria-hidden=\"true\" class=\"octicon octicon-alert\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path d=\"M8.865 1.52c-.18-.31-.51-.5-.87-.5s-.69.19-.87.5L.275 13.5c-.18.31-.18.69 0 1 .19.31.52.5.87.5h13.7c.36 0 .69-.19.86-.5.17-.31.18-.69.01-1L8.865 1.52zM8.995 13h-2v-2h2v2zm0-3h-2V6h2v4z\"></path></svg>\n      <button type=\"button\" class=\"flash-close js-flash-close js-ajax-error-dismiss\" aria-label=\"Dismiss error\">\n        <svg aria-hidden=\"true\" class=\"octicon octicon-x\" height=\"16\" version=\"1.1\" viewBox=\"0 0 12 16\" width=\"12\"><path d=\"M7.48 8l3.75 3.75-1.48 1.48L6 9.48l-3.75 3.75-1.48-1.48L4.52 8 .77 4.25l1.48-1.48L6 6.52l3.75-3.75 1.48 1.48z\"></path></svg>\n      </button>\n      Something went wrong with that request. Please try again.\n    </div>\n\n\n      \n      <script crossorigin=\"anonymous\" src=\"https://assets-cdn.github.com/assets/frameworks-1ffc10688b30831d5f8d09b06e5ea8b731b0dc0ba292c70a826422ae9609179d.js\"></script>\n      <script async=\"async\" crossorigin=\"anonymous\" src=\"https://assets-cdn.github.com/assets/github-c17cb240d3c998bc3fc8b12345393f909bda414e57fa6c61ae90d1700422b564.js\"></script>\n      \n      \n      \n      \n      \n      \n    <div class=\"js-stale-session-flash stale-session-flash flash flash-warn flash-banner hidden\">\n      <svg aria-hidden=\"true\" class=\"octicon octicon-alert\" height=\"16\" version=\"1.1\" viewBox=\"0 0 16 16\" width=\"16\"><path d=\"M8.865 1.52c-.18-.31-.51-.5-.87-.5s-.69.19-.87.5L.275 13.5c-.18.31-.18.69 0 1 .19.31.52.5.87.5h13.7c.36 0 .69-.19.86-.5.17-.31.18-.69.01-1L8.865 1.52zM8.995 13h-2v-2h2v2zm0-3h-2V6h2v4z\"></path></svg>\n      <span class=\"signed-in-tab-flash\">You signed in with another tab or window. <a href=\"\">Reload</a> to refresh your session.</span>\n      <span class=\"signed-out-tab-flash\">You signed out in another tab or window. <a href=\"\">Reload</a> to refresh your session.</span>\n    </div>\n    <div class=\"facebox\" id=\"facebox\" style=\"display:none;\">\n  <div class=\"facebox-popup\">\n    <div class=\"facebox-content\" role=\"dialog\" aria-labelledby=\"facebox-header\" aria-describedby=\"facebox-description\">\n    </div>\n    <button type=\"button\" class=\"facebox-close js-facebox-close\" aria-label=\"Close modal\">\n      <svg aria-hidden=\"true\" class=\"octicon octicon-x\" height=\"16\" version=\"1.1\" viewBox=\"0 0 12 16\" width=\"12\"><path d=\"M7.48 8l3.75 3.75-1.48 1.48L6 9.48l-3.75 3.75-1.48-1.48L4.52 8 .77 4.25l1.48-1.48L6 6.52l3.75-3.75 1.48 1.48z\"></path></svg>\n    </button>\n  </div>\n</div>\n\n  </body>\n</html>\n\n"
  },
  {
    "path": "S3WebApp/S3/assets/js/constants.js",
    "content": "var MESSAGES_ENDPOINT = \"\";\n"
  },
  {
    "path": "S3WebApp/S3/assets/js/jsbn.js",
    "content": "// Copyright (c) 2005  Tom Wu\n// All Rights Reserved.\n// See \"LICENSE\" for details.\n\n// Basic JavaScript BN library - subset useful for RSA encryption.\n\n// Bits per digit\nvar dbits;\n\n// JavaScript engine analysis\nvar canary = 0xdeadbeefcafe;\nvar j_lm = ((canary&0xffffff)==0xefcafe);\n\n// (public) Constructor\nfunction BigInteger(a,b,c) {\n  if(a != null)\n    if(\"number\" == typeof a) this.fromNumber(a,b,c);\n    else if(b == null && \"string\" != typeof a) this.fromString(a,256);\n    else this.fromString(a,b);\n}\n\n// return new, unset BigInteger\nfunction nbi() { return new BigInteger(null); }\n\n// am: Compute w_j += (x*this_i), propagate carries,\n// c is initial carry, returns final carry.\n// c < 3*dvalue, x < 2*dvalue, this_i < dvalue\n// We need to select the fastest one that works in this environment.\n\n// am1: use a single mult and divide to get the high bits,\n// max digit bits should be 26 because\n// max internal value = 2*dvalue^2-2*dvalue (< 2^53)\nfunction am1(i,x,w,j,c,n) {\n  while(--n >= 0) {\n    var v = x*this[i++]+w[j]+c;\n    c = Math.floor(v/0x4000000);\n    w[j++] = v&0x3ffffff;\n  }\n  return c;\n}\n// am2 avoids a big mult-and-extract completely.\n// Max digit bits should be <= 30 because we do bitwise ops\n// on values up to 2*hdvalue^2-hdvalue-1 (< 2^31)\nfunction am2(i,x,w,j,c,n) {\n  var xl = x&0x7fff, xh = x>>15;\n  while(--n >= 0) {\n    var l = this[i]&0x7fff;\n    var h = this[i++]>>15;\n    var m = xh*l+h*xl;\n    l = xl*l+((m&0x7fff)<<15)+w[j]+(c&0x3fffffff);\n    c = (l>>>30)+(m>>>15)+xh*h+(c>>>30);\n    w[j++] = l&0x3fffffff;\n  }\n  return c;\n}\n// Alternately, set max digit bits to 28 since some\n// browsers slow down when dealing with 32-bit numbers.\nfunction am3(i,x,w,j,c,n) {\n  var xl = x&0x3fff, xh = x>>14;\n  while(--n >= 0) {\n    var l = this[i]&0x3fff;\n    var h = this[i++]>>14;\n    var m = xh*l+h*xl;\n    l = xl*l+((m&0x3fff)<<14)+w[j]+c;\n    c = (l>>28)+(m>>14)+xh*h;\n    w[j++] = l&0xfffffff;\n  }\n  return c;\n}\nif(j_lm && (navigator.appName == \"Microsoft Internet Explorer\")) {\n  BigInteger.prototype.am = am2;\n  dbits = 30;\n}\nelse if(j_lm && (navigator.appName != \"Netscape\")) {\n  BigInteger.prototype.am = am1;\n  dbits = 26;\n}\nelse { // Mozilla/Netscape seems to prefer am3\n  BigInteger.prototype.am = am3;\n  dbits = 28;\n}\n\nBigInteger.prototype.DB = dbits;\nBigInteger.prototype.DM = ((1<<dbits)-1);\nBigInteger.prototype.DV = (1<<dbits);\n\nvar BI_FP = 52;\nBigInteger.prototype.FV = Math.pow(2,BI_FP);\nBigInteger.prototype.F1 = BI_FP-dbits;\nBigInteger.prototype.F2 = 2*dbits-BI_FP;\n\n// Digit conversions\nvar BI_RM = \"0123456789abcdefghijklmnopqrstuvwxyz\";\nvar BI_RC = new Array();\nvar rr,vv;\nrr = \"0\".charCodeAt(0);\nfor(vv = 0; vv <= 9; ++vv) BI_RC[rr++] = vv;\nrr = \"a\".charCodeAt(0);\nfor(vv = 10; vv < 36; ++vv) BI_RC[rr++] = vv;\nrr = \"A\".charCodeAt(0);\nfor(vv = 10; vv < 36; ++vv) BI_RC[rr++] = vv;\n\nfunction int2char(n) { return BI_RM.charAt(n); }\nfunction intAt(s,i) {\n  var c = BI_RC[s.charCodeAt(i)];\n  return (c==null)?-1:c;\n}\n\n// (protected) copy this to r\nfunction bnpCopyTo(r) {\n  for(var i = this.t-1; i >= 0; --i) r[i] = this[i];\n  r.t = this.t;\n  r.s = this.s;\n}\n\n// (protected) set from integer value x, -DV <= x < DV\nfunction bnpFromInt(x) {\n  this.t = 1;\n  this.s = (x<0)?-1:0;\n  if(x > 0) this[0] = x;\n  else if(x < -1) this[0] = x+this.DV;\n  else this.t = 0;\n}\n\n// return bigint initialized to value\nfunction nbv(i) { var r = nbi(); r.fromInt(i); return r; }\n\n// (protected) set from string and radix\nfunction bnpFromString(s,b) {\n  var k;\n  if(b == 16) k = 4;\n  else if(b == 8) k = 3;\n  else if(b == 256) k = 8; // byte array\n  else if(b == 2) k = 1;\n  else if(b == 32) k = 5;\n  else if(b == 4) k = 2;\n  else { this.fromRadix(s,b); return; }\n  this.t = 0;\n  this.s = 0;\n  var i = s.length, mi = false, sh = 0;\n  while(--i >= 0) {\n    var x = (k==8)?s[i]&0xff:intAt(s,i);\n    if(x < 0) {\n      if(s.charAt(i) == \"-\") mi = true;\n      continue;\n    }\n    mi = false;\n    if(sh == 0)\n      this[this.t++] = x;\n    else if(sh+k > this.DB) {\n      this[this.t-1] |= (x&((1<<(this.DB-sh))-1))<<sh;\n      this[this.t++] = (x>>(this.DB-sh));\n    }\n    else\n      this[this.t-1] |= x<<sh;\n    sh += k;\n    if(sh >= this.DB) sh -= this.DB;\n  }\n  if(k == 8 && (s[0]&0x80) != 0) {\n    this.s = -1;\n    if(sh > 0) this[this.t-1] |= ((1<<(this.DB-sh))-1)<<sh;\n  }\n  this.clamp();\n  if(mi) BigInteger.ZERO.subTo(this,this);\n}\n\n// (protected) clamp off excess high words\nfunction bnpClamp() {\n  var c = this.s&this.DM;\n  while(this.t > 0 && this[this.t-1] == c) --this.t;\n}\n\n// (public) return string representation in given radix\nfunction bnToString(b) {\n  if(this.s < 0) return \"-\"+this.negate().toString(b);\n  var k;\n  if(b == 16) k = 4;\n  else if(b == 8) k = 3;\n  else if(b == 2) k = 1;\n  else if(b == 32) k = 5;\n  else if(b == 4) k = 2;\n  else return this.toRadix(b);\n  var km = (1<<k)-1, d, m = false, r = \"\", i = this.t;\n  var p = this.DB-(i*this.DB)%k;\n  if(i-- > 0) {\n    if(p < this.DB && (d = this[i]>>p) > 0) { m = true; r = int2char(d); }\n    while(i >= 0) {\n      if(p < k) {\n        d = (this[i]&((1<<p)-1))<<(k-p);\n        d |= this[--i]>>(p+=this.DB-k);\n      }\n      else {\n        d = (this[i]>>(p-=k))&km;\n        if(p <= 0) { p += this.DB; --i; }\n      }\n      if(d > 0) m = true;\n      if(m) r += int2char(d);\n    }\n  }\n  return m?r:\"0\";\n}\n\n// (public) -this\nfunction bnNegate() { var r = nbi(); BigInteger.ZERO.subTo(this,r); return r; }\n\n// (public) |this|\nfunction bnAbs() { return (this.s<0)?this.negate():this; }\n\n// (public) return + if this > a, - if this < a, 0 if equal\nfunction bnCompareTo(a) {\n  var r = this.s-a.s;\n  if(r != 0) return r;\n  var i = this.t;\n  r = i-a.t;\n  if(r != 0) return (this.s<0)?-r:r;\n  while(--i >= 0) if((r=this[i]-a[i]) != 0) return r;\n  return 0;\n}\n\n// returns bit length of the integer x\nfunction nbits(x) {\n  var r = 1, t;\n  if((t=x>>>16) != 0) { x = t; r += 16; }\n  if((t=x>>8) != 0) { x = t; r += 8; }\n  if((t=x>>4) != 0) { x = t; r += 4; }\n  if((t=x>>2) != 0) { x = t; r += 2; }\n  if((t=x>>1) != 0) { x = t; r += 1; }\n  return r;\n}\n\n// (public) return the number of bits in \"this\"\nfunction bnBitLength() {\n  if(this.t <= 0) return 0;\n  return this.DB*(this.t-1)+nbits(this[this.t-1]^(this.s&this.DM));\n}\n\n// (protected) r = this << n*DB\nfunction bnpDLShiftTo(n,r) {\n  var i;\n  for(i = this.t-1; i >= 0; --i) r[i+n] = this[i];\n  for(i = n-1; i >= 0; --i) r[i] = 0;\n  r.t = this.t+n;\n  r.s = this.s;\n}\n\n// (protected) r = this >> n*DB\nfunction bnpDRShiftTo(n,r) {\n  for(var i = n; i < this.t; ++i) r[i-n] = this[i];\n  r.t = Math.max(this.t-n,0);\n  r.s = this.s;\n}\n\n// (protected) r = this << n\nfunction bnpLShiftTo(n,r) {\n  var bs = n%this.DB;\n  var cbs = this.DB-bs;\n  var bm = (1<<cbs)-1;\n  var ds = Math.floor(n/this.DB), c = (this.s<<bs)&this.DM, i;\n  for(i = this.t-1; i >= 0; --i) {\n    r[i+ds+1] = (this[i]>>cbs)|c;\n    c = (this[i]&bm)<<bs;\n  }\n  for(i = ds-1; i >= 0; --i) r[i] = 0;\n  r[ds] = c;\n  r.t = this.t+ds+1;\n  r.s = this.s;\n  r.clamp();\n}\n\n// (protected) r = this >> n\nfunction bnpRShiftTo(n,r) {\n  r.s = this.s;\n  var ds = Math.floor(n/this.DB);\n  if(ds >= this.t) { r.t = 0; return; }\n  var bs = n%this.DB;\n  var cbs = this.DB-bs;\n  var bm = (1<<bs)-1;\n  r[0] = this[ds]>>bs;\n  for(var i = ds+1; i < this.t; ++i) {\n    r[i-ds-1] |= (this[i]&bm)<<cbs;\n    r[i-ds] = this[i]>>bs;\n  }\n  if(bs > 0) r[this.t-ds-1] |= (this.s&bm)<<cbs;\n  r.t = this.t-ds;\n  r.clamp();\n}\n\n// (protected) r = this - a\nfunction bnpSubTo(a,r) {\n  var i = 0, c = 0, m = Math.min(a.t,this.t);\n  while(i < m) {\n    c += this[i]-a[i];\n    r[i++] = c&this.DM;\n    c >>= this.DB;\n  }\n  if(a.t < this.t) {\n    c -= a.s;\n    while(i < this.t) {\n      c += this[i];\n      r[i++] = c&this.DM;\n      c >>= this.DB;\n    }\n    c += this.s;\n  }\n  else {\n    c += this.s;\n    while(i < a.t) {\n      c -= a[i];\n      r[i++] = c&this.DM;\n      c >>= this.DB;\n    }\n    c -= a.s;\n  }\n  r.s = (c<0)?-1:0;\n  if(c < -1) r[i++] = this.DV+c;\n  else if(c > 0) r[i++] = c;\n  r.t = i;\n  r.clamp();\n}\n\n// (protected) r = this * a, r != this,a (HAC 14.12)\n// \"this\" should be the larger one if appropriate.\nfunction bnpMultiplyTo(a,r) {\n  var x = this.abs(), y = a.abs();\n  var i = x.t;\n  r.t = i+y.t;\n  while(--i >= 0) r[i] = 0;\n  for(i = 0; i < y.t; ++i) r[i+x.t] = x.am(0,y[i],r,i,0,x.t);\n  r.s = 0;\n  r.clamp();\n  if(this.s != a.s) BigInteger.ZERO.subTo(r,r);\n}\n\n// (protected) r = this^2, r != this (HAC 14.16)\nfunction bnpSquareTo(r) {\n  var x = this.abs();\n  var i = r.t = 2*x.t;\n  while(--i >= 0) r[i] = 0;\n  for(i = 0; i < x.t-1; ++i) {\n    var c = x.am(i,x[i],r,2*i,0,1);\n    if((r[i+x.t]+=x.am(i+1,2*x[i],r,2*i+1,c,x.t-i-1)) >= x.DV) {\n      r[i+x.t] -= x.DV;\n      r[i+x.t+1] = 1;\n    }\n  }\n  if(r.t > 0) r[r.t-1] += x.am(i,x[i],r,2*i,0,1);\n  r.s = 0;\n  r.clamp();\n}\n\n// (protected) divide this by m, quotient and remainder to q, r (HAC 14.20)\n// r != q, this != m.  q or r may be null.\nfunction bnpDivRemTo(m,q,r) {\n  var pm = m.abs();\n  if(pm.t <= 0) return;\n  var pt = this.abs();\n  if(pt.t < pm.t) {\n    if(q != null) q.fromInt(0);\n    if(r != null) this.copyTo(r);\n    return;\n  }\n  if(r == null) r = nbi();\n  var y = nbi(), ts = this.s, ms = m.s;\n  var nsh = this.DB-nbits(pm[pm.t-1]);\t// normalize modulus\n  if(nsh > 0) { pm.lShiftTo(nsh,y); pt.lShiftTo(nsh,r); }\n  else { pm.copyTo(y); pt.copyTo(r); }\n  var ys = y.t;\n  var y0 = y[ys-1];\n  if(y0 == 0) return;\n  var yt = y0*(1<<this.F1)+((ys>1)?y[ys-2]>>this.F2:0);\n  var d1 = this.FV/yt, d2 = (1<<this.F1)/yt, e = 1<<this.F2;\n  var i = r.t, j = i-ys, t = (q==null)?nbi():q;\n  y.dlShiftTo(j,t);\n  if(r.compareTo(t) >= 0) {\n    r[r.t++] = 1;\n    r.subTo(t,r);\n  }\n  BigInteger.ONE.dlShiftTo(ys,t);\n  t.subTo(y,y);\t// \"negative\" y so we can replace sub with am later\n  while(y.t < ys) y[y.t++] = 0;\n  while(--j >= 0) {\n    // Estimate quotient digit\n    var qd = (r[--i]==y0)?this.DM:Math.floor(r[i]*d1+(r[i-1]+e)*d2);\n    if((r[i]+=y.am(0,qd,r,j,0,ys)) < qd) {\t// Try it out\n      y.dlShiftTo(j,t);\n      r.subTo(t,r);\n      while(r[i] < --qd) r.subTo(t,r);\n    }\n  }\n  if(q != null) {\n    r.drShiftTo(ys,q);\n    if(ts != ms) BigInteger.ZERO.subTo(q,q);\n  }\n  r.t = ys;\n  r.clamp();\n  if(nsh > 0) r.rShiftTo(nsh,r);\t// Denormalize remainder\n  if(ts < 0) BigInteger.ZERO.subTo(r,r);\n}\n\n// (public) this mod a\nfunction bnMod(a) {\n  var r = nbi();\n  this.abs().divRemTo(a,null,r);\n  if(this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) a.subTo(r,r);\n  return r;\n}\n\n// Modular reduction using \"classic\" algorithm\nfunction Classic(m) { this.m = m; }\nfunction cConvert(x) {\n  if(x.s < 0 || x.compareTo(this.m) >= 0) return x.mod(this.m);\n  else return x;\n}\nfunction cRevert(x) { return x; }\nfunction cReduce(x) { x.divRemTo(this.m,null,x); }\nfunction cMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); }\nfunction cSqrTo(x,r) { x.squareTo(r); this.reduce(r); }\n\nClassic.prototype.convert = cConvert;\nClassic.prototype.revert = cRevert;\nClassic.prototype.reduce = cReduce;\nClassic.prototype.mulTo = cMulTo;\nClassic.prototype.sqrTo = cSqrTo;\n\n// (protected) return \"-1/this % 2^DB\"; useful for Mont. reduction\n// justification:\n//         xy == 1 (mod m)\n//         xy =  1+km\n//   xy(2-xy) = (1+km)(1-km)\n// x[y(2-xy)] = 1-k^2m^2\n// x[y(2-xy)] == 1 (mod m^2)\n// if y is 1/x mod m, then y(2-xy) is 1/x mod m^2\n// should reduce x and y(2-xy) by m^2 at each step to keep size bounded.\n// JS multiply \"overflows\" differently from C/C++, so care is needed here.\nfunction bnpInvDigit() {\n  if(this.t < 1) return 0;\n  var x = this[0];\n  if((x&1) == 0) return 0;\n  var y = x&3;\t\t// y == 1/x mod 2^2\n  y = (y*(2-(x&0xf)*y))&0xf;\t// y == 1/x mod 2^4\n  y = (y*(2-(x&0xff)*y))&0xff;\t// y == 1/x mod 2^8\n  y = (y*(2-(((x&0xffff)*y)&0xffff)))&0xffff;\t// y == 1/x mod 2^16\n  // last step - calculate inverse mod DV directly;\n  // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints\n  y = (y*(2-x*y%this.DV))%this.DV;\t\t// y == 1/x mod 2^dbits\n  // we really want the negative inverse, and -DV < y < DV\n  return (y>0)?this.DV-y:-y;\n}\n\n// Montgomery reduction\nfunction Montgomery(m) {\n  this.m = m;\n  this.mp = m.invDigit();\n  this.mpl = this.mp&0x7fff;\n  this.mph = this.mp>>15;\n  this.um = (1<<(m.DB-15))-1;\n  this.mt2 = 2*m.t;\n}\n\n// xR mod m\nfunction montConvert(x) {\n  var r = nbi();\n  x.abs().dlShiftTo(this.m.t,r);\n  r.divRemTo(this.m,null,r);\n  if(x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) this.m.subTo(r,r);\n  return r;\n}\n\n// x/R mod m\nfunction montRevert(x) {\n  var r = nbi();\n  x.copyTo(r);\n  this.reduce(r);\n  return r;\n}\n\n// x = x/R mod m (HAC 14.32)\nfunction montReduce(x) {\n  while(x.t <= this.mt2)\t// pad x so am has enough room later\n    x[x.t++] = 0;\n  for(var i = 0; i < this.m.t; ++i) {\n    // faster way of calculating u0 = x[i]*mp mod DV\n    var j = x[i]&0x7fff;\n    var u0 = (j*this.mpl+(((j*this.mph+(x[i]>>15)*this.mpl)&this.um)<<15))&x.DM;\n    // use am to combine the multiply-shift-add into one call\n    j = i+this.m.t;\n    x[j] += this.m.am(0,u0,x,i,0,this.m.t);\n    // propagate carry\n    while(x[j] >= x.DV) { x[j] -= x.DV; x[++j]++; }\n  }\n  x.clamp();\n  x.drShiftTo(this.m.t,x);\n  if(x.compareTo(this.m) >= 0) x.subTo(this.m,x);\n}\n\n// r = \"x^2/R mod m\"; x != r\nfunction montSqrTo(x,r) { x.squareTo(r); this.reduce(r); }\n\n// r = \"xy/R mod m\"; x,y != r\nfunction montMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); }\n\nMontgomery.prototype.convert = montConvert;\nMontgomery.prototype.revert = montRevert;\nMontgomery.prototype.reduce = montReduce;\nMontgomery.prototype.mulTo = montMulTo;\nMontgomery.prototype.sqrTo = montSqrTo;\n\n// (protected) true iff this is even\nfunction bnpIsEven() { return ((this.t>0)?(this[0]&1):this.s) == 0; }\n\n// (protected) this^e, e < 2^32, doing sqr and mul with \"r\" (HAC 14.79)\nfunction bnpExp(e,z) {\n  if(e > 0xffffffff || e < 1) return BigInteger.ONE;\n  var r = nbi(), r2 = nbi(), g = z.convert(this), i = nbits(e)-1;\n  g.copyTo(r);\n  while(--i >= 0) {\n    z.sqrTo(r,r2);\n    if((e&(1<<i)) > 0) z.mulTo(r2,g,r);\n    else { var t = r; r = r2; r2 = t; }\n  }\n  return z.revert(r);\n}\n\n// (public) this^e % m, 0 <= e < 2^32\nfunction bnModPowInt(e,m) {\n  var z;\n  if(e < 256 || m.isEven()) z = new Classic(m); else z = new Montgomery(m);\n  return this.exp(e,z);\n}\n\n// protected\nBigInteger.prototype.copyTo = bnpCopyTo;\nBigInteger.prototype.fromInt = bnpFromInt;\nBigInteger.prototype.fromString = bnpFromString;\nBigInteger.prototype.clamp = bnpClamp;\nBigInteger.prototype.dlShiftTo = bnpDLShiftTo;\nBigInteger.prototype.drShiftTo = bnpDRShiftTo;\nBigInteger.prototype.lShiftTo = bnpLShiftTo;\nBigInteger.prototype.rShiftTo = bnpRShiftTo;\nBigInteger.prototype.subTo = bnpSubTo;\nBigInteger.prototype.multiplyTo = bnpMultiplyTo;\nBigInteger.prototype.squareTo = bnpSquareTo;\nBigInteger.prototype.divRemTo = bnpDivRemTo;\nBigInteger.prototype.invDigit = bnpInvDigit;\nBigInteger.prototype.isEven = bnpIsEven;\nBigInteger.prototype.exp = bnpExp;\n\n// public\nBigInteger.prototype.toString = bnToString;\nBigInteger.prototype.negate = bnNegate;\nBigInteger.prototype.abs = bnAbs;\nBigInteger.prototype.compareTo = bnCompareTo;\nBigInteger.prototype.bitLength = bnBitLength;\nBigInteger.prototype.mod = bnMod;\nBigInteger.prototype.modPowInt = bnModPowInt;\n\n// \"constants\"\nBigInteger.ZERO = nbv(0);\nBigInteger.ONE = nbv(1);\n"
  },
  {
    "path": "S3WebApp/S3/assets/js/jsbn2.js",
    "content": "// Copyright (c) 2005-2009  Tom Wu\n// All Rights Reserved.\n// See \"LICENSE\" for details.\n\n// Extended JavaScript BN functions, required for RSA private ops.\n\n// Version 1.1: new BigInteger(\"0\", 10) returns \"proper\" zero\n// Version 1.2: square() API, isProbablePrime fix\n\n// (public)\nfunction bnClone() { var r = nbi(); this.copyTo(r); return r; }\n\n// (public) return value as integer\nfunction bnIntValue() {\n  if(this.s < 0) {\n    if(this.t == 1) return this[0]-this.DV;\n    else if(this.t == 0) return -1;\n  }\n  else if(this.t == 1) return this[0];\n  else if(this.t == 0) return 0;\n  // assumes 16 < DB < 32\n  return ((this[1]&((1<<(32-this.DB))-1))<<this.DB)|this[0];\n}\n\n// (public) return value as byte\nfunction bnByteValue() { return (this.t==0)?this.s:(this[0]<<24)>>24; }\n\n// (public) return value as short (assumes DB>=16)\nfunction bnShortValue() { return (this.t==0)?this.s:(this[0]<<16)>>16; }\n\n// (protected) return x s.t. r^x < DV\nfunction bnpChunkSize(r) { return Math.floor(Math.LN2*this.DB/Math.log(r)); }\n\n// (public) 0 if this == 0, 1 if this > 0\nfunction bnSigNum() {\n  if(this.s < 0) return -1;\n  else if(this.t <= 0 || (this.t == 1 && this[0] <= 0)) return 0;\n  else return 1;\n}\n\n// (protected) convert to radix string\nfunction bnpToRadix(b) {\n  if(b == null) b = 10;\n  if(this.signum() == 0 || b < 2 || b > 36) return \"0\";\n  var cs = this.chunkSize(b);\n  var a = Math.pow(b,cs);\n  var d = nbv(a), y = nbi(), z = nbi(), r = \"\";\n  this.divRemTo(d,y,z);\n  while(y.signum() > 0) {\n    r = (a+z.intValue()).toString(b).substr(1) + r;\n    y.divRemTo(d,y,z);\n  }\n  return z.intValue().toString(b) + r;\n}\n\n// (protected) convert from radix string\nfunction bnpFromRadix(s,b) {\n  this.fromInt(0);\n  if(b == null) b = 10;\n  var cs = this.chunkSize(b);\n  var d = Math.pow(b,cs), mi = false, j = 0, w = 0;\n  for(var i = 0; i < s.length; ++i) {\n    var x = intAt(s,i);\n    if(x < 0) {\n      if(s.charAt(i) == \"-\" && this.signum() == 0) mi = true;\n      continue;\n    }\n    w = b*w+x;\n    if(++j >= cs) {\n      this.dMultiply(d);\n      this.dAddOffset(w,0);\n      j = 0;\n      w = 0;\n    }\n  }\n  if(j > 0) {\n    this.dMultiply(Math.pow(b,j));\n    this.dAddOffset(w,0);\n  }\n  if(mi) BigInteger.ZERO.subTo(this,this);\n}\n\n// (protected) alternate constructor\nfunction bnpFromNumber(a,b,c) {\n  if(\"number\" == typeof b) {\n    // new BigInteger(int,int,RNG)\n    if(a < 2) this.fromInt(1);\n    else {\n      this.fromNumber(a,c);\n      if(!this.testBit(a-1))\t// force MSB set\n        this.bitwiseTo(BigInteger.ONE.shiftLeft(a-1),op_or,this);\n      if(this.isEven()) this.dAddOffset(1,0); // force odd\n      while(!this.isProbablePrime(b)) {\n        this.dAddOffset(2,0);\n        if(this.bitLength() > a) this.subTo(BigInteger.ONE.shiftLeft(a-1),this);\n      }\n    }\n  }\n  else {\n    // new BigInteger(int,RNG)\n    var x = new Array(), t = a&7;\n    x.length = (a>>3)+1;\n    b.nextBytes(x);\n    if(t > 0) x[0] &= ((1<<t)-1); else x[0] = 0;\n    this.fromString(x,256);\n  }\n}\n\n// (public) convert to bigendian byte array\nfunction bnToByteArray() {\n  var i = this.t, r = new Array();\n  r[0] = this.s;\n  var p = this.DB-(i*this.DB)%8, d, k = 0;\n  if(i-- > 0) {\n    if(p < this.DB && (d = this[i]>>p) != (this.s&this.DM)>>p)\n      r[k++] = d|(this.s<<(this.DB-p));\n    while(i >= 0) {\n      if(p < 8) {\n        d = (this[i]&((1<<p)-1))<<(8-p);\n        d |= this[--i]>>(p+=this.DB-8);\n      }\n      else {\n        d = (this[i]>>(p-=8))&0xff;\n        if(p <= 0) { p += this.DB; --i; }\n      }\n      if((d&0x80) != 0) d |= -256;\n      if(k == 0 && (this.s&0x80) != (d&0x80)) ++k;\n      if(k > 0 || d != this.s) r[k++] = d;\n    }\n  }\n  return r;\n}\n\nfunction bnEquals(a) { return(this.compareTo(a)==0); }\nfunction bnMin(a) { return(this.compareTo(a)<0)?this:a; }\nfunction bnMax(a) { return(this.compareTo(a)>0)?this:a; }\n\n// (protected) r = this op a (bitwise)\nfunction bnpBitwiseTo(a,op,r) {\n  var i, f, m = Math.min(a.t,this.t);\n  for(i = 0; i < m; ++i) r[i] = op(this[i],a[i]);\n  if(a.t < this.t) {\n    f = a.s&this.DM;\n    for(i = m; i < this.t; ++i) r[i] = op(this[i],f);\n    r.t = this.t;\n  }\n  else {\n    f = this.s&this.DM;\n    for(i = m; i < a.t; ++i) r[i] = op(f,a[i]);\n    r.t = a.t;\n  }\n  r.s = op(this.s,a.s);\n  r.clamp();\n}\n\n// (public) this & a\nfunction op_and(x,y) { return x&y; }\nfunction bnAnd(a) { var r = nbi(); this.bitwiseTo(a,op_and,r); return r; }\n\n// (public) this | a\nfunction op_or(x,y) { return x|y; }\nfunction bnOr(a) { var r = nbi(); this.bitwiseTo(a,op_or,r); return r; }\n\n// (public) this ^ a\nfunction op_xor(x,y) { return x^y; }\nfunction bnXor(a) { var r = nbi(); this.bitwiseTo(a,op_xor,r); return r; }\n\n// (public) this & ~a\nfunction op_andnot(x,y) { return x&~y; }\nfunction bnAndNot(a) { var r = nbi(); this.bitwiseTo(a,op_andnot,r); return r; }\n\n// (public) ~this\nfunction bnNot() {\n  var r = nbi();\n  for(var i = 0; i < this.t; ++i) r[i] = this.DM&~this[i];\n  r.t = this.t;\n  r.s = ~this.s;\n  return r;\n}\n\n// (public) this << n\nfunction bnShiftLeft(n) {\n  var r = nbi();\n  if(n < 0) this.rShiftTo(-n,r); else this.lShiftTo(n,r);\n  return r;\n}\n\n// (public) this >> n\nfunction bnShiftRight(n) {\n  var r = nbi();\n  if(n < 0) this.lShiftTo(-n,r); else this.rShiftTo(n,r);\n  return r;\n}\n\n// return index of lowest 1-bit in x, x < 2^31\nfunction lbit(x) {\n  if(x == 0) return -1;\n  var r = 0;\n  if((x&0xffff) == 0) { x >>= 16; r += 16; }\n  if((x&0xff) == 0) { x >>= 8; r += 8; }\n  if((x&0xf) == 0) { x >>= 4; r += 4; }\n  if((x&3) == 0) { x >>= 2; r += 2; }\n  if((x&1) == 0) ++r;\n  return r;\n}\n\n// (public) returns index of lowest 1-bit (or -1 if none)\nfunction bnGetLowestSetBit() {\n  for(var i = 0; i < this.t; ++i)\n    if(this[i] != 0) return i*this.DB+lbit(this[i]);\n  if(this.s < 0) return this.t*this.DB;\n  return -1;\n}\n\n// return number of 1 bits in x\nfunction cbit(x) {\n  var r = 0;\n  while(x != 0) { x &= x-1; ++r; }\n  return r;\n}\n\n// (public) return number of set bits\nfunction bnBitCount() {\n  var r = 0, x = this.s&this.DM;\n  for(var i = 0; i < this.t; ++i) r += cbit(this[i]^x);\n  return r;\n}\n\n// (public) true iff nth bit is set\nfunction bnTestBit(n) {\n  var j = Math.floor(n/this.DB);\n  if(j >= this.t) return(this.s!=0);\n  return((this[j]&(1<<(n%this.DB)))!=0);\n}\n\n// (protected) this op (1<<n)\nfunction bnpChangeBit(n,op) {\n  var r = BigInteger.ONE.shiftLeft(n);\n  this.bitwiseTo(r,op,r);\n  return r;\n}\n\n// (public) this | (1<<n)\nfunction bnSetBit(n) { return this.changeBit(n,op_or); }\n\n// (public) this & ~(1<<n)\nfunction bnClearBit(n) { return this.changeBit(n,op_andnot); }\n\n// (public) this ^ (1<<n)\nfunction bnFlipBit(n) { return this.changeBit(n,op_xor); }\n\n// (protected) r = this + a\nfunction bnpAddTo(a,r) {\n  var i = 0, c = 0, m = Math.min(a.t,this.t);\n  while(i < m) {\n    c += this[i]+a[i];\n    r[i++] = c&this.DM;\n    c >>= this.DB;\n  }\n  if(a.t < this.t) {\n    c += a.s;\n    while(i < this.t) {\n      c += this[i];\n      r[i++] = c&this.DM;\n      c >>= this.DB;\n    }\n    c += this.s;\n  }\n  else {\n    c += this.s;\n    while(i < a.t) {\n      c += a[i];\n      r[i++] = c&this.DM;\n      c >>= this.DB;\n    }\n    c += a.s;\n  }\n  r.s = (c<0)?-1:0;\n  if(c > 0) r[i++] = c;\n  else if(c < -1) r[i++] = this.DV+c;\n  r.t = i;\n  r.clamp();\n}\n\n// (public) this + a\nfunction bnAdd(a) { var r = nbi(); this.addTo(a,r); return r; }\n\n// (public) this - a\nfunction bnSubtract(a) { var r = nbi(); this.subTo(a,r); return r; }\n\n// (public) this * a\nfunction bnMultiply(a) { var r = nbi(); this.multiplyTo(a,r); return r; }\n\n// (public) this^2\nfunction bnSquare() { var r = nbi(); this.squareTo(r); return r; }\n\n// (public) this / a\nfunction bnDivide(a) { var r = nbi(); this.divRemTo(a,r,null); return r; }\n\n// (public) this % a\nfunction bnRemainder(a) { var r = nbi(); this.divRemTo(a,null,r); return r; }\n\n// (public) [this/a,this%a]\nfunction bnDivideAndRemainder(a) {\n  var q = nbi(), r = nbi();\n  this.divRemTo(a,q,r);\n  return new Array(q,r);\n}\n\n// (protected) this *= n, this >= 0, 1 < n < DV\nfunction bnpDMultiply(n) {\n  this[this.t] = this.am(0,n-1,this,0,0,this.t);\n  ++this.t;\n  this.clamp();\n}\n\n// (protected) this += n << w words, this >= 0\nfunction bnpDAddOffset(n,w) {\n  if(n == 0) return;\n  while(this.t <= w) this[this.t++] = 0;\n  this[w] += n;\n  while(this[w] >= this.DV) {\n    this[w] -= this.DV;\n    if(++w >= this.t) this[this.t++] = 0;\n    ++this[w];\n  }\n}\n\n// A \"null\" reducer\nfunction NullExp() {}\nfunction nNop(x) { return x; }\nfunction nMulTo(x,y,r) { x.multiplyTo(y,r); }\nfunction nSqrTo(x,r) { x.squareTo(r); }\n\nNullExp.prototype.convert = nNop;\nNullExp.prototype.revert = nNop;\nNullExp.prototype.mulTo = nMulTo;\nNullExp.prototype.sqrTo = nSqrTo;\n\n// (public) this^e\nfunction bnPow(e) { return this.exp(e,new NullExp()); }\n\n// (protected) r = lower n words of \"this * a\", a.t <= n\n// \"this\" should be the larger one if appropriate.\nfunction bnpMultiplyLowerTo(a,n,r) {\n  var i = Math.min(this.t+a.t,n);\n  r.s = 0; // assumes a,this >= 0\n  r.t = i;\n  while(i > 0) r[--i] = 0;\n  var j;\n  for(j = r.t-this.t; i < j; ++i) r[i+this.t] = this.am(0,a[i],r,i,0,this.t);\n  for(j = Math.min(a.t,n); i < j; ++i) this.am(0,a[i],r,i,0,n-i);\n  r.clamp();\n}\n\n// (protected) r = \"this * a\" without lower n words, n > 0\n// \"this\" should be the larger one if appropriate.\nfunction bnpMultiplyUpperTo(a,n,r) {\n  --n;\n  var i = r.t = this.t+a.t-n;\n  r.s = 0; // assumes a,this >= 0\n  while(--i >= 0) r[i] = 0;\n  for(i = Math.max(n-this.t,0); i < a.t; ++i)\n    r[this.t+i-n] = this.am(n-i,a[i],r,0,0,this.t+i-n);\n  r.clamp();\n  r.drShiftTo(1,r);\n}\n\n// Barrett modular reduction\nfunction Barrett(m) {\n  // setup Barrett\n  this.r2 = nbi();\n  this.q3 = nbi();\n  BigInteger.ONE.dlShiftTo(2*m.t,this.r2);\n  this.mu = this.r2.divide(m);\n  this.m = m;\n}\n\nfunction barrettConvert(x) {\n  if(x.s < 0 || x.t > 2*this.m.t) return x.mod(this.m);\n  else if(x.compareTo(this.m) < 0) return x;\n  else { var r = nbi(); x.copyTo(r); this.reduce(r); return r; }\n}\n\nfunction barrettRevert(x) { return x; }\n\n// x = x mod m (HAC 14.42)\nfunction barrettReduce(x) {\n  x.drShiftTo(this.m.t-1,this.r2);\n  if(x.t > this.m.t+1) { x.t = this.m.t+1; x.clamp(); }\n  this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3);\n  this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);\n  while(x.compareTo(this.r2) < 0) x.dAddOffset(1,this.m.t+1);\n  x.subTo(this.r2,x);\n  while(x.compareTo(this.m) >= 0) x.subTo(this.m,x);\n}\n\n// r = x^2 mod m; x != r\nfunction barrettSqrTo(x,r) { x.squareTo(r); this.reduce(r); }\n\n// r = x*y mod m; x,y != r\nfunction barrettMulTo(x,y,r) { x.multiplyTo(y,r); this.reduce(r); }\n\nBarrett.prototype.convert = barrettConvert;\nBarrett.prototype.revert = barrettRevert;\nBarrett.prototype.reduce = barrettReduce;\nBarrett.prototype.mulTo = barrettMulTo;\nBarrett.prototype.sqrTo = barrettSqrTo;\n\n// (public) this^e % m (HAC 14.85)\nfunction bnModPow(e,m) {\n  var i = e.bitLength(), k, r = nbv(1), z;\n  if(i <= 0) return r;\n  else if(i < 18) k = 1;\n  else if(i < 48) k = 3;\n  else if(i < 144) k = 4;\n  else if(i < 768) k = 5;\n  else k = 6;\n  if(i < 8)\n    z = new Classic(m);\n  else if(m.isEven())\n    z = new Barrett(m);\n  else\n    z = new Montgomery(m);\n\n  // precomputation\n  var g = new Array(), n = 3, k1 = k-1, km = (1<<k)-1;\n  g[1] = z.convert(this);\n  if(k > 1) {\n    var g2 = nbi();\n    z.sqrTo(g[1],g2);\n    while(n <= km) {\n      g[n] = nbi();\n      z.mulTo(g2,g[n-2],g[n]);\n      n += 2;\n    }\n  }\n\n  var j = e.t-1, w, is1 = true, r2 = nbi(), t;\n  i = nbits(e[j])-1;\n  while(j >= 0) {\n    if(i >= k1) w = (e[j]>>(i-k1))&km;\n    else {\n      w = (e[j]&((1<<(i+1))-1))<<(k1-i);\n      if(j > 0) w |= e[j-1]>>(this.DB+i-k1);\n    }\n\n    n = k;\n    while((w&1) == 0) { w >>= 1; --n; }\n    if((i -= n) < 0) { i += this.DB; --j; }\n    if(is1) {\t// ret == 1, don't bother squaring or multiplying it\n      g[w].copyTo(r);\n      is1 = false;\n    }\n    else {\n      while(n > 1) { z.sqrTo(r,r2); z.sqrTo(r2,r); n -= 2; }\n      if(n > 0) z.sqrTo(r,r2); else { t = r; r = r2; r2 = t; }\n      z.mulTo(r2,g[w],r);\n    }\n\n    while(j >= 0 && (e[j]&(1<<i)) == 0) {\n      z.sqrTo(r,r2); t = r; r = r2; r2 = t;\n      if(--i < 0) { i = this.DB-1; --j; }\n    }\n  }\n  return z.revert(r);\n}\n\n// (public) gcd(this,a) (HAC 14.54)\nfunction bnGCD(a) {\n  var x = (this.s<0)?this.negate():this.clone();\n  var y = (a.s<0)?a.negate():a.clone();\n  if(x.compareTo(y) < 0) { var t = x; x = y; y = t; }\n  var i = x.getLowestSetBit(), g = y.getLowestSetBit();\n  if(g < 0) return x;\n  if(i < g) g = i;\n  if(g > 0) {\n    x.rShiftTo(g,x);\n    y.rShiftTo(g,y);\n  }\n  while(x.signum() > 0) {\n    if((i = x.getLowestSetBit()) > 0) x.rShiftTo(i,x);\n    if((i = y.getLowestSetBit()) > 0) y.rShiftTo(i,y);\n    if(x.compareTo(y) >= 0) {\n      x.subTo(y,x);\n      x.rShiftTo(1,x);\n    }\n    else {\n      y.subTo(x,y);\n      y.rShiftTo(1,y);\n    }\n  }\n  if(g > 0) y.lShiftTo(g,y);\n  return y;\n}\n\n// (protected) this % n, n < 2^26\nfunction bnpModInt(n) {\n  if(n <= 0) return 0;\n  var d = this.DV%n, r = (this.s<0)?n-1:0;\n  if(this.t > 0)\n    if(d == 0) r = this[0]%n;\n    else for(var i = this.t-1; i >= 0; --i) r = (d*r+this[i])%n;\n  return r;\n}\n\n// (public) 1/this % m (HAC 14.61)\nfunction bnModInverse(m) {\n  var ac = m.isEven();\n  if((this.isEven() && ac) || m.signum() == 0) return BigInteger.ZERO;\n  var u = m.clone(), v = this.clone();\n  var a = nbv(1), b = nbv(0), c = nbv(0), d = nbv(1);\n  while(u.signum() != 0) {\n    while(u.isEven()) {\n      u.rShiftTo(1,u);\n      if(ac) {\n        if(!a.isEven() || !b.isEven()) { a.addTo(this,a); b.subTo(m,b); }\n        a.rShiftTo(1,a);\n      }\n      else if(!b.isEven()) b.subTo(m,b);\n      b.rShiftTo(1,b);\n    }\n    while(v.isEven()) {\n      v.rShiftTo(1,v);\n      if(ac) {\n        if(!c.isEven() || !d.isEven()) { c.addTo(this,c); d.subTo(m,d); }\n        c.rShiftTo(1,c);\n      }\n      else if(!d.isEven()) d.subTo(m,d);\n      d.rShiftTo(1,d);\n    }\n    if(u.compareTo(v) >= 0) {\n      u.subTo(v,u);\n      if(ac) a.subTo(c,a);\n      b.subTo(d,b);\n    }\n    else {\n      v.subTo(u,v);\n      if(ac) c.subTo(a,c);\n      d.subTo(b,d);\n    }\n  }\n  if(v.compareTo(BigInteger.ONE) != 0) return BigInteger.ZERO;\n  if(d.compareTo(m) >= 0) return d.subtract(m);\n  if(d.signum() < 0) d.addTo(m,d); else return d;\n  if(d.signum() < 0) return d.add(m); else return d;\n}\n\nvar lowprimes = [2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997];\nvar lplim = (1<<26)/lowprimes[lowprimes.length-1];\n\n// (public) test primality with certainty >= 1-.5^t\nfunction bnIsProbablePrime(t) {\n  var i, x = this.abs();\n  if(x.t == 1 && x[0] <= lowprimes[lowprimes.length-1]) {\n    for(i = 0; i < lowprimes.length; ++i)\n      if(x[0] == lowprimes[i]) return true;\n    return false;\n  }\n  if(x.isEven()) return false;\n  i = 1;\n  while(i < lowprimes.length) {\n    var m = lowprimes[i], j = i+1;\n    while(j < lowprimes.length && m < lplim) m *= lowprimes[j++];\n    m = x.modInt(m);\n    while(i < j) if(m%lowprimes[i++] == 0) return false;\n  }\n  return x.millerRabin(t);\n}\n\n// (protected) true if probably prime (HAC 4.24, Miller-Rabin)\nfunction bnpMillerRabin(t) {\n  var n1 = this.subtract(BigInteger.ONE);\n  var k = n1.getLowestSetBit();\n  if(k <= 0) return false;\n  var r = n1.shiftRight(k);\n  t = (t+1)>>1;\n  if(t > lowprimes.length) t = lowprimes.length;\n  var a = nbi();\n  for(var i = 0; i < t; ++i) {\n    //Pick bases at random, instead of starting at 2\n    a.fromInt(lowprimes[Math.floor(Math.random()*lowprimes.length)]);\n    var y = a.modPow(r,this);\n    if(y.compareTo(BigInteger.ONE) != 0 && y.compareTo(n1) != 0) {\n      var j = 1;\n      while(j++ < k && y.compareTo(n1) != 0) {\n        y = y.modPowInt(2,this);\n        if(y.compareTo(BigInteger.ONE) == 0) return false;\n      }\n      if(y.compareTo(n1) != 0) return false;\n    }\n  }\n  return true;\n}\n\n// protected\nBigInteger.prototype.chunkSize = bnpChunkSize;\nBigInteger.prototype.toRadix = bnpToRadix;\nBigInteger.prototype.fromRadix = bnpFromRadix;\nBigInteger.prototype.fromNumber = bnpFromNumber;\nBigInteger.prototype.bitwiseTo = bnpBitwiseTo;\nBigInteger.prototype.changeBit = bnpChangeBit;\nBigInteger.prototype.addTo = bnpAddTo;\nBigInteger.prototype.dMultiply = bnpDMultiply;\nBigInteger.prototype.dAddOffset = bnpDAddOffset;\nBigInteger.prototype.multiplyLowerTo = bnpMultiplyLowerTo;\nBigInteger.prototype.multiplyUpperTo = bnpMultiplyUpperTo;\nBigInteger.prototype.modInt = bnpModInt;\nBigInteger.prototype.millerRabin = bnpMillerRabin;\n\n// public\nBigInteger.prototype.clone = bnClone;\nBigInteger.prototype.intValue = bnIntValue;\nBigInteger.prototype.byteValue = bnByteValue;\nBigInteger.prototype.shortValue = bnShortValue;\nBigInteger.prototype.signum = bnSigNum;\nBigInteger.prototype.toByteArray = bnToByteArray;\nBigInteger.prototype.equals = bnEquals;\nBigInteger.prototype.min = bnMin;\nBigInteger.prototype.max = bnMax;\nBigInteger.prototype.and = bnAnd;\nBigInteger.prototype.or = bnOr;\nBigInteger.prototype.xor = bnXor;\nBigInteger.prototype.andNot = bnAndNot;\nBigInteger.prototype.not = bnNot;\nBigInteger.prototype.shiftLeft = bnShiftLeft;\nBigInteger.prototype.shiftRight = bnShiftRight;\nBigInteger.prototype.getLowestSetBit = bnGetLowestSetBit;\nBigInteger.prototype.bitCount = bnBitCount;\nBigInteger.prototype.testBit = bnTestBit;\nBigInteger.prototype.setBit = bnSetBit;\nBigInteger.prototype.clearBit = bnClearBit;\nBigInteger.prototype.flipBit = bnFlipBit;\nBigInteger.prototype.add = bnAdd;\nBigInteger.prototype.subtract = bnSubtract;\nBigInteger.prototype.multiply = bnMultiply;\nBigInteger.prototype.divide = bnDivide;\nBigInteger.prototype.remainder = bnRemainder;\nBigInteger.prototype.divideAndRemainder = bnDivideAndRemainder;\nBigInteger.prototype.modPow = bnModPow;\nBigInteger.prototype.modInverse = bnModInverse;\nBigInteger.prototype.pow = bnPow;\nBigInteger.prototype.gcd = bnGCD;\nBigInteger.prototype.isProbablePrime = bnIsProbablePrime;\n\n// JSBN-specific extension\nBigInteger.prototype.square = bnSquare;\n\n// BigInteger interfaces not implemented in jsbn:\n\n// BigInteger(int signum, byte[] magnitude)\n// double doubleValue()\n// float floatValue()\n// int hashCode()\n// long longValue()\n// static BigInteger valueOf(long val)\n"
  },
  {
    "path": "S3WebApp/S3/assets/js/sjcl.js",
    "content": "\"use strict\";function q(a){throw a;}var s=void 0,u=!1;var sjcl={cipher:{},hash:{},keyexchange:{},mode:{},misc:{},codec:{},exception:{corrupt:function(a){this.toString=function(){return\"CORRUPT: \"+this.message};this.message=a},invalid:function(a){this.toString=function(){return\"INVALID: \"+this.message};this.message=a},bug:function(a){this.toString=function(){return\"BUG: \"+this.message};this.message=a},notReady:function(a){this.toString=function(){return\"NOT READY: \"+this.message};this.message=a}}};\n\"undefined\"!==typeof module&&module.exports&&(module.exports=sjcl);\"function\"===typeof define&&define([],function(){return sjcl});\nsjcl.cipher.aes=function(a){this.l[0][0][0]||this.F();var b,c,d,e,g=this.l[0][4],f=this.l[1];b=a.length;var h=1;4!==b&&(6!==b&&8!==b)&&q(new sjcl.exception.invalid(\"invalid aes key size\"));this.b=[d=a.slice(0),e=[]];for(a=b;a<4*b+28;a++){c=d[a-1];if(0===a%b||8===b&&4===a%b)c=g[c>>>24]<<24^g[c>>16&255]<<16^g[c>>8&255]<<8^g[c&255],0===a%b&&(c=c<<8^c>>>24^h<<24,h=h<<1^283*(h>>7));d[a]=d[a-b]^c}for(b=0;a;b++,a--)c=d[b&3?a:a-4],e[b]=4>=a||4>b?c:f[0][g[c>>>24]]^f[1][g[c>>16&255]]^f[2][g[c>>8&255]]^f[3][g[c&\n255]]};\nsjcl.cipher.aes.prototype={encrypt:function(a){return w(this,a,0)},decrypt:function(a){return w(this,a,1)},l:[[[],[],[],[],[]],[[],[],[],[],[]]],F:function(){var a=this.l[0],b=this.l[1],c=a[4],d=b[4],e,g,f,h=[],l=[],k,n,m,p;for(e=0;0x100>e;e++)l[(h[e]=e<<1^283*(e>>7))^e]=e;for(g=f=0;!c[g];g^=k||1,f=l[f]||1){m=f^f<<1^f<<2^f<<3^f<<4;m=m>>8^m&255^99;c[g]=m;d[m]=g;n=h[e=h[k=h[g]]];p=0x1010101*n^0x10001*e^0x101*k^0x1010100*g;n=0x101*h[m]^0x1010100*m;for(e=0;4>e;e++)a[e][g]=n=n<<24^n>>>8,b[e][m]=p=p<<24^p>>>8}for(e=\n0;5>e;e++)a[e]=a[e].slice(0),b[e]=b[e].slice(0)}};\nfunction w(a,b,c){4!==b.length&&q(new sjcl.exception.invalid(\"invalid aes block size\"));var d=a.b[c],e=b[0]^d[0],g=b[c?3:1]^d[1],f=b[2]^d[2];b=b[c?1:3]^d[3];var h,l,k,n=d.length/4-2,m,p=4,t=[0,0,0,0];h=a.l[c];a=h[0];var r=h[1],v=h[2],y=h[3],z=h[4];for(m=0;m<n;m++)h=a[e>>>24]^r[g>>16&255]^v[f>>8&255]^y[b&255]^d[p],l=a[g>>>24]^r[f>>16&255]^v[b>>8&255]^y[e&255]^d[p+1],k=a[f>>>24]^r[b>>16&255]^v[e>>8&255]^y[g&255]^d[p+2],b=a[b>>>24]^r[e>>16&255]^v[g>>8&255]^y[f&255]^d[p+3],p+=4,e=h,g=l,f=k;for(m=0;4>\nm;m++)t[c?3&-m:m]=z[e>>>24]<<24^z[g>>16&255]<<16^z[f>>8&255]<<8^z[b&255]^d[p++],h=e,e=g,g=f,f=b,b=h;return t}\nsjcl.bitArray={bitSlice:function(a,b,c){a=sjcl.bitArray.Q(a.slice(b/32),32-(b&31)).slice(1);return c===s?a:sjcl.bitArray.clamp(a,c-b)},extract:function(a,b,c){var d=Math.floor(-b-c&31);return((b+c-1^b)&-32?a[b/32|0]<<32-d^a[b/32+1|0]>>>d:a[b/32|0]>>>d)&(1<<c)-1},concat:function(a,b){if(0===a.length||0===b.length)return a.concat(b);var c=a[a.length-1],d=sjcl.bitArray.getPartial(c);return 32===d?a.concat(b):sjcl.bitArray.Q(b,d,c|0,a.slice(0,a.length-1))},bitLength:function(a){var b=a.length;return 0===\nb?0:32*(b-1)+sjcl.bitArray.getPartial(a[b-1])},clamp:function(a,b){if(32*a.length<b)return a;a=a.slice(0,Math.ceil(b/32));var c=a.length;b&=31;0<c&&b&&(a[c-1]=sjcl.bitArray.partial(b,a[c-1]&2147483648>>b-1,1));return a},partial:function(a,b,c){return 32===a?b:(c?b|0:b<<32-a)+0x10000000000*a},getPartial:function(a){return Math.round(a/0x10000000000)||32},equal:function(a,b){if(sjcl.bitArray.bitLength(a)!==sjcl.bitArray.bitLength(b))return u;var c=0,d;for(d=0;d<a.length;d++)c|=a[d]^b[d];return 0===\nc},Q:function(a,b,c,d){var e;e=0;for(d===s&&(d=[]);32<=b;b-=32)d.push(c),c=0;if(0===b)return d.concat(a);for(e=0;e<a.length;e++)d.push(c|a[e]>>>b),c=a[e]<<32-b;e=a.length?a[a.length-1]:0;a=sjcl.bitArray.getPartial(e);d.push(sjcl.bitArray.partial(b+a&31,32<b+a?c:d.pop(),1));return d},g:function(a,b){return[a[0]^b[0],a[1]^b[1],a[2]^b[2],a[3]^b[3]]},byteswapM:function(a){var b,c;for(b=0;b<a.length;++b)c=a[b],a[b]=c>>>24|c>>>8&0xff00|(c&0xff00)<<8|c<<24;return a}};\nsjcl.codec.utf8String={fromBits:function(a){var b=\"\",c=sjcl.bitArray.bitLength(a),d,e;for(d=0;d<c/8;d++)0===(d&3)&&(e=a[d/4]),b+=String.fromCharCode(e>>>24),e<<=8;return decodeURIComponent(escape(b))},toBits:function(a){a=unescape(encodeURIComponent(a));var b=[],c,d=0;for(c=0;c<a.length;c++)d=d<<8|a.charCodeAt(c),3===(c&3)&&(b.push(d),d=0);c&3&&b.push(sjcl.bitArray.partial(8*(c&3),d));return b}};\nsjcl.codec.hex={fromBits:function(a){var b=\"\",c;for(c=0;c<a.length;c++)b+=((a[c]|0)+0xf00000000000).toString(16).substr(4);return b.substr(0,sjcl.bitArray.bitLength(a)/4)},toBits:function(a){var b,c=[],d;a=a.replace(/\\s|0x/g,\"\");d=a.length;a+=\"00000000\";for(b=0;b<a.length;b+=8)c.push(parseInt(a.substr(b,8),16)^0);return sjcl.bitArray.clamp(c,4*d)}};\nsjcl.codec.base64={K:\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\",fromBits:function(a,b,c){var d=\"\",e=0,g=sjcl.codec.base64.K,f=0,h=sjcl.bitArray.bitLength(a);c&&(g=g.substr(0,62)+\"-_\");for(c=0;6*d.length<h;)d+=g.charAt((f^a[c]>>>e)>>>26),6>e?(f=a[c]<<6-e,e+=26,c++):(f<<=6,e-=6);for(;d.length&3&&!b;)d+=\"=\";return d},toBits:function(a,b){a=a.replace(/\\s|=/g,\"\");var c=[],d,e=0,g=sjcl.codec.base64.K,f=0,h;b&&(g=g.substr(0,62)+\"-_\");for(d=0;d<a.length;d++)h=g.indexOf(a.charAt(d)),\n0>h&&q(new sjcl.exception.invalid(\"this isn't base64!\")),26<e?(e-=26,c.push(f^h>>>e),f=h<<32-e):(e+=6,f^=h<<32-e);e&56&&c.push(sjcl.bitArray.partial(e&56,f,1));return c}};sjcl.codec.base64url={fromBits:function(a){return sjcl.codec.base64.fromBits(a,1,1)},toBits:function(a){return sjcl.codec.base64.toBits(a,1)}};\nsjcl.codec.bytes={fromBits:function(a){var b=[],c=sjcl.bitArray.bitLength(a),d,e;for(d=0;d<c/8;d++)0===(d&3)&&(e=a[d/4]),b.push(e>>>24),e<<=8;return b},toBits:function(a){var b=[],c,d=0;for(c=0;c<a.length;c++)d=d<<8|a[c],3===(c&3)&&(b.push(d),d=0);c&3&&b.push(sjcl.bitArray.partial(8*(c&3),d));return b}};sjcl.hash.sha256=function(a){this.b[0]||this.F();a?(this.r=a.r.slice(0),this.o=a.o.slice(0),this.i=a.i):this.reset()};sjcl.hash.sha256.hash=function(a){return(new sjcl.hash.sha256).update(a).finalize()};\nsjcl.hash.sha256.prototype={blockSize:512,reset:function(){this.r=this.O.slice(0);this.o=[];this.i=0;return this},update:function(a){\"string\"===typeof a&&(a=sjcl.codec.utf8String.toBits(a));var b,c=this.o=sjcl.bitArray.concat(this.o,a);b=this.i;a=this.i=b+sjcl.bitArray.bitLength(a);for(b=512+b&-512;b<=a;b+=512)x(this,c.splice(0,16));return this},finalize:function(){var a,b=this.o,c=this.r,b=sjcl.bitArray.concat(b,[sjcl.bitArray.partial(1,1)]);for(a=b.length+2;a&15;a++)b.push(0);b.push(Math.floor(this.i/\n4294967296));for(b.push(this.i|0);b.length;)x(this,b.splice(0,16));this.reset();return c},O:[],b:[],F:function(){function a(a){return 0x100000000*(a-Math.floor(a))|0}var b=0,c=2,d;a:for(;64>b;c++){for(d=2;d*d<=c;d++)if(0===c%d)continue a;8>b&&(this.O[b]=a(Math.pow(c,0.5)));this.b[b]=a(Math.pow(c,1/3));b++}}};\nfunction x(a,b){var c,d,e,g=b.slice(0),f=a.r,h=a.b,l=f[0],k=f[1],n=f[2],m=f[3],p=f[4],t=f[5],r=f[6],v=f[7];for(c=0;64>c;c++)16>c?d=g[c]:(d=g[c+1&15],e=g[c+14&15],d=g[c&15]=(d>>>7^d>>>18^d>>>3^d<<25^d<<14)+(e>>>17^e>>>19^e>>>10^e<<15^e<<13)+g[c&15]+g[c+9&15]|0),d=d+v+(p>>>6^p>>>11^p>>>25^p<<26^p<<21^p<<7)+(r^p&(t^r))+h[c],v=r,r=t,t=p,p=m+d|0,m=n,n=k,k=l,l=d+(k&n^m&(k^n))+(k>>>2^k>>>13^k>>>22^k<<30^k<<19^k<<10)|0;f[0]=f[0]+l|0;f[1]=f[1]+k|0;f[2]=f[2]+n|0;f[3]=f[3]+m|0;f[4]=f[4]+p|0;f[5]=f[5]+t|0;f[6]=\nf[6]+r|0;f[7]=f[7]+v|0}\nsjcl.mode.ccm={name:\"ccm\",s:[],listenProgress:function(a){sjcl.mode.ccm.s.push(a)},unListenProgress:function(a){a=sjcl.mode.ccm.s.indexOf(a);-1<a&&sjcl.mode.ccm.s.splice(a,1)},W:function(a){var b=sjcl.mode.ccm.s.slice(),c;for(c=0;c<b.length;c+=1)b[c](a)},encrypt:function(a,b,c,d,e){var g,f=b.slice(0),h=sjcl.bitArray,l=h.bitLength(c)/8,k=h.bitLength(f)/8;e=e||64;d=d||[];7>l&&q(new sjcl.exception.invalid(\"ccm: iv must be at least 7 bytes\"));for(g=2;4>g&&k>>>8*g;g++);g<15-l&&(g=15-l);c=h.clamp(c,8*(15-\ng));b=sjcl.mode.ccm.M(a,b,c,d,e,g);f=sjcl.mode.ccm.p(a,f,c,b,e,g);return h.concat(f.data,f.tag)},decrypt:function(a,b,c,d,e){e=e||64;d=d||[];var g=sjcl.bitArray,f=g.bitLength(c)/8,h=g.bitLength(b),l=g.clamp(b,h-e),k=g.bitSlice(b,h-e),h=(h-e)/8;7>f&&q(new sjcl.exception.invalid(\"ccm: iv must be at least 7 bytes\"));for(b=2;4>b&&h>>>8*b;b++);b<15-f&&(b=15-f);c=g.clamp(c,8*(15-b));l=sjcl.mode.ccm.p(a,l,c,k,e,b);a=sjcl.mode.ccm.M(a,l.data,c,d,e,b);g.equal(l.tag,a)||q(new sjcl.exception.corrupt(\"ccm: tag doesn't match\"));\nreturn l.data},da:function(a,b,c,d,e,g){var f=[],h=sjcl.bitArray,l=h.g;d=[h.partial(8,(b.length?64:0)|d-2<<2|g-1)];d=h.concat(d,c);d[3]|=e;d=a.encrypt(d);if(b.length){c=h.bitLength(b)/8;65279>=c?f=[h.partial(16,c)]:0xffffffff>=c&&(f=h.concat([h.partial(16,65534)],[c]));f=h.concat(f,b);for(b=0;b<f.length;b+=4)d=a.encrypt(l(d,f.slice(b,b+4).concat([0,0,0])))}return d},M:function(a,b,c,d,e,g){var f=sjcl.bitArray,h=f.g;e/=8;(e%2||4>e||16<e)&&q(new sjcl.exception.invalid(\"ccm: invalid tag length\"));(0xffffffff<\nd.length||0xffffffff<b.length)&&q(new sjcl.exception.bug(\"ccm: can't deal with 4GiB or more data\"));c=sjcl.mode.ccm.da(a,d,c,e,f.bitLength(b)/8,g);for(d=0;d<b.length;d+=4)c=a.encrypt(h(c,b.slice(d,d+4).concat([0,0,0])));return f.clamp(c,8*e)},p:function(a,b,c,d,e,g){var f,h=sjcl.bitArray;f=h.g;var l=b.length,k=h.bitLength(b),n=l/50,m=n;c=h.concat([h.partial(8,g-1)],c).concat([0,0,0]).slice(0,4);d=h.bitSlice(f(d,a.encrypt(c)),0,e);if(!l)return{tag:d,data:[]};for(f=0;f<l;f+=4)f>n&&(sjcl.mode.ccm.W(f/\nl),n+=m),c[3]++,e=a.encrypt(c),b[f]^=e[0],b[f+1]^=e[1],b[f+2]^=e[2],b[f+3]^=e[3];return{tag:d,data:h.clamp(b,k)}}};\nsjcl.mode.ocb2={name:\"ocb2\",encrypt:function(a,b,c,d,e,g){128!==sjcl.bitArray.bitLength(c)&&q(new sjcl.exception.invalid(\"ocb iv must be 128 bits\"));var f,h=sjcl.mode.ocb2.I,l=sjcl.bitArray,k=l.g,n=[0,0,0,0];c=h(a.encrypt(c));var m,p=[];d=d||[];e=e||64;for(f=0;f+4<b.length;f+=4)m=b.slice(f,f+4),n=k(n,m),p=p.concat(k(c,a.encrypt(k(c,m)))),c=h(c);m=b.slice(f);b=l.bitLength(m);f=a.encrypt(k(c,[0,0,0,b]));m=l.clamp(k(m.concat([0,0,0]),f),b);n=k(n,k(m.concat([0,0,0]),f));n=a.encrypt(k(n,k(c,h(c))));d.length&&\n(n=k(n,g?d:sjcl.mode.ocb2.pmac(a,d)));return p.concat(l.concat(m,l.clamp(n,e)))},decrypt:function(a,b,c,d,e,g){128!==sjcl.bitArray.bitLength(c)&&q(new sjcl.exception.invalid(\"ocb iv must be 128 bits\"));e=e||64;var f=sjcl.mode.ocb2.I,h=sjcl.bitArray,l=h.g,k=[0,0,0,0],n=f(a.encrypt(c)),m,p,t=sjcl.bitArray.bitLength(b)-e,r=[];d=d||[];for(c=0;c+4<t/32;c+=4)m=l(n,a.decrypt(l(n,b.slice(c,c+4)))),k=l(k,m),r=r.concat(m),n=f(n);p=t-32*c;m=a.encrypt(l(n,[0,0,0,p]));m=l(m,h.clamp(b.slice(c),p).concat([0,0,0]));\nk=l(k,m);k=a.encrypt(l(k,l(n,f(n))));d.length&&(k=l(k,g?d:sjcl.mode.ocb2.pmac(a,d)));h.equal(h.clamp(k,e),h.bitSlice(b,t))||q(new sjcl.exception.corrupt(\"ocb: tag doesn't match\"));return r.concat(h.clamp(m,p))},pmac:function(a,b){var c,d=sjcl.mode.ocb2.I,e=sjcl.bitArray,g=e.g,f=[0,0,0,0],h=a.encrypt([0,0,0,0]),h=g(h,d(d(h)));for(c=0;c+4<b.length;c+=4)h=d(h),f=g(f,a.encrypt(g(h,b.slice(c,c+4))));c=b.slice(c);128>e.bitLength(c)&&(h=g(h,d(h)),c=e.concat(c,[-2147483648,0,0,0]));f=g(f,c);return a.encrypt(g(d(g(h,\nd(h))),f))},I:function(a){return[a[0]<<1^a[1]>>>31,a[1]<<1^a[2]>>>31,a[2]<<1^a[3]>>>31,a[3]<<1^135*(a[0]>>>31)]}};\nsjcl.mode.gcm={name:\"gcm\",encrypt:function(a,b,c,d,e){var g=b.slice(0);b=sjcl.bitArray;d=d||[];a=sjcl.mode.gcm.p(!0,a,g,d,c,e||128);return b.concat(a.data,a.tag)},decrypt:function(a,b,c,d,e){var g=b.slice(0),f=sjcl.bitArray,h=f.bitLength(g);e=e||128;d=d||[];e<=h?(b=f.bitSlice(g,h-e),g=f.bitSlice(g,0,h-e)):(b=g,g=[]);a=sjcl.mode.gcm.p(u,a,g,d,c,e);f.equal(a.tag,b)||q(new sjcl.exception.corrupt(\"gcm: tag doesn't match\"));return a.data},aa:function(a,b){var c,d,e,g,f,h=sjcl.bitArray.g;e=[0,0,0,0];g=\nb.slice(0);for(c=0;128>c;c++){(d=0!==(a[Math.floor(c/32)]&1<<31-c%32))&&(e=h(e,g));f=0!==(g[3]&1);for(d=3;0<d;d--)g[d]=g[d]>>>1|(g[d-1]&1)<<31;g[0]>>>=1;f&&(g[0]^=-0x1f000000)}return e},h:function(a,b,c){var d,e=c.length;b=b.slice(0);for(d=0;d<e;d+=4)b[0]^=0xffffffff&c[d],b[1]^=0xffffffff&c[d+1],b[2]^=0xffffffff&c[d+2],b[3]^=0xffffffff&c[d+3],b=sjcl.mode.gcm.aa(b,a);return b},p:function(a,b,c,d,e,g){var f,h,l,k,n,m,p,t,r=sjcl.bitArray;m=c.length;p=r.bitLength(c);t=r.bitLength(d);h=r.bitLength(e);f=\nb.encrypt([0,0,0,0]);96===h?(e=e.slice(0),e=r.concat(e,[1])):(e=sjcl.mode.gcm.h(f,[0,0,0,0],e),e=sjcl.mode.gcm.h(f,e,[0,0,Math.floor(h/0x100000000),h&0xffffffff]));h=sjcl.mode.gcm.h(f,[0,0,0,0],d);n=e.slice(0);d=h.slice(0);a||(d=sjcl.mode.gcm.h(f,h,c));for(k=0;k<m;k+=4)n[3]++,l=b.encrypt(n),c[k]^=l[0],c[k+1]^=l[1],c[k+2]^=l[2],c[k+3]^=l[3];c=r.clamp(c,p);a&&(d=sjcl.mode.gcm.h(f,h,c));a=[Math.floor(t/0x100000000),t&0xffffffff,Math.floor(p/0x100000000),p&0xffffffff];d=sjcl.mode.gcm.h(f,d,a);l=b.encrypt(e);\nd[0]^=l[0];d[1]^=l[1];d[2]^=l[2];d[3]^=l[3];return{tag:r.bitSlice(d,0,g),data:c}}};sjcl.misc.hmac=function(a,b){this.N=b=b||sjcl.hash.sha256;var c=[[],[]],d,e=b.prototype.blockSize/32;this.n=[new b,new b];a.length>e&&(a=b.hash(a));for(d=0;d<e;d++)c[0][d]=a[d]^909522486,c[1][d]=a[d]^1549556828;this.n[0].update(c[0]);this.n[1].update(c[1]);this.H=new b(this.n[0])};\nsjcl.misc.hmac.prototype.encrypt=sjcl.misc.hmac.prototype.mac=function(a){this.R&&q(new sjcl.exception.invalid(\"encrypt on already updated hmac called!\"));this.update(a);return this.digest(a)};sjcl.misc.hmac.prototype.reset=function(){this.H=new this.N(this.n[0]);this.R=u};sjcl.misc.hmac.prototype.update=function(a){this.R=!0;this.H.update(a)};sjcl.misc.hmac.prototype.digest=function(){var a=this.H.finalize(),a=(new this.N(this.n[1])).update(a).finalize();this.reset();return a};\nsjcl.misc.pbkdf2=function(a,b,c,d,e){c=c||1E3;(0>d||0>c)&&q(sjcl.exception.invalid(\"invalid params to pbkdf2\"));\"string\"===typeof a&&(a=sjcl.codec.utf8String.toBits(a));\"string\"===typeof b&&(b=sjcl.codec.utf8String.toBits(b));e=e||sjcl.misc.hmac;a=new e(a);var g,f,h,l,k=[],n=sjcl.bitArray;for(l=1;32*k.length<(d||1);l++){e=g=a.encrypt(n.concat(b,[l]));for(f=1;f<c;f++){g=a.encrypt(g);for(h=0;h<g.length;h++)e[h]^=g[h]}k=k.concat(e)}d&&(k=n.clamp(k,d));return k};\nsjcl.prng=function(a){this.c=[new sjcl.hash.sha256];this.j=[0];this.G=0;this.t={};this.D=0;this.L={};this.P=this.d=this.k=this.Y=0;this.b=[0,0,0,0,0,0,0,0];this.f=[0,0,0,0];this.B=s;this.C=a;this.q=u;this.A={progress:{},seeded:{}};this.m=this.X=0;this.u=1;this.w=2;this.T=0x10000;this.J=[0,48,64,96,128,192,0x100,384,512,768,1024];this.U=3E4;this.S=80};\nsjcl.prng.prototype={randomWords:function(a,b){var c=[],d;d=this.isReady(b);var e;d===this.m&&q(new sjcl.exception.notReady(\"generator isn't seeded\"));if(d&this.w){d=!(d&this.u);e=[];var g=0,f;this.P=e[0]=(new Date).valueOf()+this.U;for(f=0;16>f;f++)e.push(0x100000000*Math.random()|0);for(f=0;f<this.c.length&&!(e=e.concat(this.c[f].finalize()),g+=this.j[f],this.j[f]=0,!d&&this.G&1<<f);f++);this.G>=1<<this.c.length&&(this.c.push(new sjcl.hash.sha256),this.j.push(0));this.d-=g;g>this.k&&(this.k=g);this.G++;\nthis.b=sjcl.hash.sha256.hash(this.b.concat(e));this.B=new sjcl.cipher.aes(this.b);for(d=0;4>d&&!(this.f[d]=this.f[d]+1|0,this.f[d]);d++);}for(d=0;d<a;d+=4)0===(d+1)%this.T&&A(this),e=B(this),c.push(e[0],e[1],e[2],e[3]);A(this);return c.slice(0,a)},setDefaultParanoia:function(a,b){0===a&&\"Setting paranoia=0 will ruin your security; use it only for testing\"!==b&&q(\"Setting paranoia=0 will ruin your security; use it only for testing\");this.C=a},addEntropy:function(a,b,c){c=c||\"user\";var d,e,g=(new Date).valueOf(),\nf=this.t[c],h=this.isReady(),l=0;d=this.L[c];d===s&&(d=this.L[c]=this.Y++);f===s&&(f=this.t[c]=0);this.t[c]=(this.t[c]+1)%this.c.length;switch(typeof a){case \"number\":b===s&&(b=1);this.c[f].update([d,this.D++,1,b,g,1,a|0]);break;case \"object\":c=Object.prototype.toString.call(a);if(\"[object Uint32Array]\"===c){e=[];for(c=0;c<a.length;c++)e.push(a[c]);a=e}else{\"[object Array]\"!==c&&(l=1);for(c=0;c<a.length&&!l;c++)\"number\"!==typeof a[c]&&(l=1)}if(!l){if(b===s)for(c=b=0;c<a.length;c++)for(e=a[c];0<e;)b++,\ne>>>=1;this.c[f].update([d,this.D++,2,b,g,a.length].concat(a))}break;case \"string\":b===s&&(b=a.length);this.c[f].update([d,this.D++,3,b,g,a.length]);this.c[f].update(a);break;default:l=1}l&&q(new sjcl.exception.bug(\"random: addEntropy only supports number, array of numbers or string\"));this.j[f]+=b;this.d+=b;h===this.m&&(this.isReady()!==this.m&&C(\"seeded\",Math.max(this.k,this.d)),C(\"progress\",this.getProgress()))},isReady:function(a){a=this.J[a!==s?a:this.C];return this.k&&this.k>=a?this.j[0]>this.S&&\n(new Date).valueOf()>this.P?this.w|this.u:this.u:this.d>=a?this.w|this.m:this.m},getProgress:function(a){a=this.J[a?a:this.C];return this.k>=a?1:this.d>a?1:this.d/a},startCollectors:function(){this.q||(this.a={loadTimeCollector:D(this,this.ca),mouseCollector:D(this,this.ea),keyboardCollector:D(this,this.ba),accelerometerCollector:D(this,this.V),touchCollector:D(this,this.ga)},window.addEventListener?(window.addEventListener(\"load\",this.a.loadTimeCollector,u),window.addEventListener(\"mousemove\",this.a.mouseCollector,\nu),window.addEventListener(\"keypress\",this.a.keyboardCollector,u),window.addEventListener(\"devicemotion\",this.a.accelerometerCollector,u),window.addEventListener(\"touchmove\",this.a.touchCollector,u)):document.attachEvent?(document.attachEvent(\"onload\",this.a.loadTimeCollector),document.attachEvent(\"onmousemove\",this.a.mouseCollector),document.attachEvent(\"keypress\",this.a.keyboardCollector)):q(new sjcl.exception.bug(\"can't attach event\")),this.q=!0)},stopCollectors:function(){this.q&&(window.removeEventListener?\n(window.removeEventListener(\"load\",this.a.loadTimeCollector,u),window.removeEventListener(\"mousemove\",this.a.mouseCollector,u),window.removeEventListener(\"keypress\",this.a.keyboardCollector,u),window.removeEventListener(\"devicemotion\",this.a.accelerometerCollector,u),window.removeEventListener(\"touchmove\",this.a.touchCollector,u)):document.detachEvent&&(document.detachEvent(\"onload\",this.a.loadTimeCollector),document.detachEvent(\"onmousemove\",this.a.mouseCollector),document.detachEvent(\"keypress\",\nthis.a.keyboardCollector)),this.q=u)},addEventListener:function(a,b){this.A[a][this.X++]=b},removeEventListener:function(a,b){var c,d,e=this.A[a],g=[];for(d in e)e.hasOwnProperty(d)&&e[d]===b&&g.push(d);for(c=0;c<g.length;c++)d=g[c],delete e[d]},ba:function(){E(1)},ea:function(a){var b,c;try{b=a.x||a.clientX||a.offsetX||0,c=a.y||a.clientY||a.offsetY||0}catch(d){c=b=0}0!=b&&0!=c&&sjcl.random.addEntropy([b,c],2,\"mouse\");E(0)},ga:function(a){a=a.touches[0]||a.changedTouches[0];sjcl.random.addEntropy([a.pageX||\na.clientX,a.pageY||a.clientY],1,\"touch\");E(0)},ca:function(){E(2)},V:function(a){a=a.accelerationIncludingGravity.x||a.accelerationIncludingGravity.y||a.accelerationIncludingGravity.z;if(window.orientation){var b=window.orientation;\"number\"===typeof b&&sjcl.random.addEntropy(b,1,\"accelerometer\")}a&&sjcl.random.addEntropy(a,2,\"accelerometer\");E(0)}};function C(a,b){var c,d=sjcl.random.A[a],e=[];for(c in d)d.hasOwnProperty(c)&&e.push(d[c]);for(c=0;c<e.length;c++)e[c](b)}\nfunction E(a){\"undefined\"!==typeof window&&window.performance&&\"function\"===typeof window.performance.now?sjcl.random.addEntropy(window.performance.now(),a,\"loadtime\"):sjcl.random.addEntropy((new Date).valueOf(),a,\"loadtime\")}function A(a){a.b=B(a).concat(B(a));a.B=new sjcl.cipher.aes(a.b)}function B(a){for(var b=0;4>b&&!(a.f[b]=a.f[b]+1|0,a.f[b]);b++);return a.B.encrypt(a.f)}function D(a,b){return function(){b.apply(a,arguments)}}sjcl.random=new sjcl.prng(6);\na:try{var F,G,H,I;if(I=\"undefined\"!==typeof module){var J;if(J=module.exports){var K;try{K=require(\"crypto\")}catch(L){K=null}J=(G=K)&&G.randomBytes}I=J}if(I)F=G.randomBytes(128),F=new Uint32Array((new Uint8Array(F)).buffer),sjcl.random.addEntropy(F,1024,\"crypto['randomBytes']\");else if(\"undefined\"!==typeof window&&\"undefined\"!==typeof Uint32Array){H=new Uint32Array(32);if(window.crypto&&window.crypto.getRandomValues)window.crypto.getRandomValues(H);else if(window.msCrypto&&window.msCrypto.getRandomValues)window.msCrypto.getRandomValues(H);\nelse break a;sjcl.random.addEntropy(H,1024,\"crypto['getRandomValues']\")}}catch(M){\"undefined\"!==typeof window&&window.console&&(console.log(\"There was an error collecting entropy from the browser:\"),console.log(M))}\nsjcl.json={defaults:{v:1,iter:1E3,ks:128,ts:64,mode:\"ccm\",adata:\"\",cipher:\"aes\"},$:function(a,b,c,d){c=c||{};d=d||{};var e=sjcl.json,g=e.e({iv:sjcl.random.randomWords(4,0)},e.defaults),f;e.e(g,c);c=g.adata;\"string\"===typeof g.salt&&(g.salt=sjcl.codec.base64.toBits(g.salt));\"string\"===typeof g.iv&&(g.iv=sjcl.codec.base64.toBits(g.iv));(!sjcl.mode[g.mode]||!sjcl.cipher[g.cipher]||\"string\"===typeof a&&100>=g.iter||64!==g.ts&&96!==g.ts&&128!==g.ts||128!==g.ks&&192!==g.ks&&0x100!==g.ks||2>g.iv.length||4<\ng.iv.length)&&q(new sjcl.exception.invalid(\"json encrypt: invalid parameters\"));\"string\"===typeof a?(f=sjcl.misc.cachedPbkdf2(a,g),a=f.key.slice(0,g.ks/32),g.salt=f.salt):sjcl.ecc&&a instanceof sjcl.ecc.elGamal.publicKey&&(f=a.kem(),g.kemtag=f.tag,a=f.key.slice(0,g.ks/32));\"string\"===typeof b&&(b=sjcl.codec.utf8String.toBits(b));\"string\"===typeof c&&(g.adata=c=sjcl.codec.utf8String.toBits(c));f=new sjcl.cipher[g.cipher](a);e.e(d,g);d.key=a;g.ct=\"ccm\"===g.mode&&sjcl.arrayBuffer&&sjcl.arrayBuffer.ccm&&\nb instanceof ArrayBuffer?sjcl.arrayBuffer.ccm.encrypt(f,b,g.iv,c,g.ts):sjcl.mode[g.mode].encrypt(f,b,g.iv,c,g.ts);return g},encrypt:function(a,b,c,d){var e=sjcl.json,g=e.$.apply(e,arguments);return e.encode(g)},Z:function(a,b,c,d){c=c||{};d=d||{};var e=sjcl.json;b=e.e(e.e(e.e({},e.defaults),b),c,!0);var g,f;g=b.adata;\"string\"===typeof b.salt&&(b.salt=sjcl.codec.base64.toBits(b.salt));\"string\"===typeof b.iv&&(b.iv=sjcl.codec.base64.toBits(b.iv));(!sjcl.mode[b.mode]||!sjcl.cipher[b.cipher]||\"string\"===\ntypeof a&&100>=b.iter||64!==b.ts&&96!==b.ts&&128!==b.ts||128!==b.ks&&192!==b.ks&&0x100!==b.ks||!b.iv||2>b.iv.length||4<b.iv.length)&&q(new sjcl.exception.invalid(\"json decrypt: invalid parameters\"));\"string\"===typeof a?(f=sjcl.misc.cachedPbkdf2(a,b),a=f.key.slice(0,b.ks/32),b.salt=f.salt):sjcl.ecc&&a instanceof sjcl.ecc.elGamal.secretKey&&(a=a.unkem(sjcl.codec.base64.toBits(b.kemtag)).slice(0,b.ks/32));\"string\"===typeof g&&(g=sjcl.codec.utf8String.toBits(g));f=new sjcl.cipher[b.cipher](a);g=\"ccm\"===\nb.mode&&sjcl.arrayBuffer&&sjcl.arrayBuffer.ccm&&b.ct instanceof ArrayBuffer?sjcl.arrayBuffer.ccm.decrypt(f,b.ct,b.iv,b.tag,g,b.ts):sjcl.mode[b.mode].decrypt(f,b.ct,b.iv,g,b.ts);e.e(d,b);d.key=a;return 1===c.raw?g:sjcl.codec.utf8String.fromBits(g)},decrypt:function(a,b,c,d){var e=sjcl.json;return e.Z(a,e.decode(b),c,d)},encode:function(a){var b,c=\"{\",d=\"\";for(b in a)if(a.hasOwnProperty(b))switch(b.match(/^[a-z0-9]+$/i)||q(new sjcl.exception.invalid(\"json encode: invalid property name\")),c+=d+'\"'+b+\n'\":',d=\",\",typeof a[b]){case \"number\":case \"boolean\":c+=a[b];break;case \"string\":c+='\"'+escape(a[b])+'\"';break;case \"object\":c+='\"'+sjcl.codec.base64.fromBits(a[b],0)+'\"';break;default:q(new sjcl.exception.bug(\"json encode: unsupported type\"))}return c+\"}\"},decode:function(a){a=a.replace(/\\s/g,\"\");a.match(/^\\{.*\\}$/)||q(new sjcl.exception.invalid(\"json decode: this isn't json!\"));a=a.replace(/^\\{|\\}$/g,\"\").split(/,/);var b={},c,d;for(c=0;c<a.length;c++)(d=a[c].match(/^\\s*(?:([\"']?)([a-z][a-z0-9]*)\\1)\\s*:\\s*(?:(-?\\d+)|\"([a-z0-9+\\/%*_.@=\\-]*)\"|(true|false))$/i))||\nq(new sjcl.exception.invalid(\"json decode: this isn't json!\")),null!=d[3]?b[d[2]]=parseInt(d[3],10):null!=d[4]?b[d[2]]=d[2].match(/^(ct|adata|salt|iv)$/)?sjcl.codec.base64.toBits(d[4]):unescape(d[4]):null!=d[5]&&(b[d[2]]=\"true\"===d[5]);return b},e:function(a,b,c){a===s&&(a={});if(b===s)return a;for(var d in b)b.hasOwnProperty(d)&&(c&&(a[d]!==s&&a[d]!==b[d])&&q(new sjcl.exception.invalid(\"required parameter overridden\")),a[d]=b[d]);return a},ia:function(a,b){var c={},d;for(d in a)a.hasOwnProperty(d)&&\na[d]!==b[d]&&(c[d]=a[d]);return c},ha:function(a,b){var c={},d;for(d=0;d<b.length;d++)a[b[d]]!==s&&(c[b[d]]=a[b[d]]);return c}};sjcl.encrypt=sjcl.json.encrypt;sjcl.decrypt=sjcl.json.decrypt;sjcl.misc.fa={};sjcl.misc.cachedPbkdf2=function(a,b){var c=sjcl.misc.fa,d;b=b||{};d=b.iter||1E3;c=c[a]=c[a]||{};d=c[d]=c[d]||{firstSalt:b.salt&&b.salt.length?b.salt.slice(0):sjcl.random.randomWords(2,0)};c=b.salt===s?d.firstSalt:b.salt;d[c]=d[c]||sjcl.misc.pbkdf2(a,c,b.iter);return{key:d[c].slice(0),salt:c.slice(0)}};\n"
  },
  {
    "path": "S3WebApp/S3/factories/utils.js",
    "content": "angular.module('chatApp.utils', [])\n\n.factory('$_', function() {\n\treturn window._; // assumes underscore has already been loaded on the page\n})\n\n.factory('$localstorage', ['$window', function($window) {\n    return {\n        set: function(key, value) {\n            $window.localStorage[key] = value;\n        },\n        get: function(key, defaultValue) {\n          return $window.localStorage[key] || defaultValue;\n        },\n        setObject: function(key, value) {\n          $window.localStorage[key] = JSON.stringify(value);\n        },\n        getObject: function(key) {\n          return JSON.parse($window.localStorage[key] || '{}');\n        },\n        addLogEntry: function(value) {\n            var log = JSON.parse($window.localStorage[\"log\"] || '[]');\n            log.push(value);\n            $window.localStorage[\"log\"] = JSON.stringify(log);\n        },\n        clearLog: function() {\n            $window.localStorage.removeItem(\"log\");\n        }\n    }\n}]);\n"
  },
  {
    "path": "S3WebApp/S3/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en-US\">\n    <head>\n        <meta charset=\"UTF-8\">\n        <title>Zombie Chat Application</title>\n        <link rel=\"stylesheet\" href=\"//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css\" integrity=\"sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7\" crossorigin=\"anonymous\">\n        <link rel=\"stylesheet\" href=\"assets/css/zombie.css\"type=\"text/css\" charset=\"utf-8\" />\n    </head>\n\n    <body>\n\n        <div ng-app=\"chatApp\">\n            <ui-view></ui-view>\n        </div>\n\n        <script src=\"//ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js\"></script>\n        <script src=\"//ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-resource.js\"></script>\n        <script src=\"//cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.3.1/angular-ui-router.js\"></script>\n        <script src=\"//ajax.googleapis.com/ajax/libs/angularjs/1.4.0/angular-messages.js\"></script>\n\n        <script src=\"assets/js/jsbn.js\"></script>\n        <script src=\"assets/js/jsbn2.js\"></script>\n        <script src=\"assets/js/sjcl.js\"></script>\n        <script src=\"assets/js/moment.min.js\"></script>\n        <script src=\"assets/js/aws-cognito-sdk.min.js\"></script>\n        <script src=\"assets/js/amazon-cognito-identity.min.js\"></script>\n        <script src=\"assets/js/aws-sdk.min.js\"></script>\n        <script src=\"assets/js/underscore.min.js\"></script>\n\n\n        <!-- Needed for APIG Client and sigV4Client for generated SDK -->\n        <script src=\"lib/axios/dist/axios.standalone.js\"></script>\n        <script src=\"lib/CryptoJS/rollups/hmac-sha256.js\"></script>\n        <script src=\"lib/CryptoJS/rollups/sha256.js\"></script>\n        <script src=\"lib/CryptoJS/components/hmac.js\"></script>\n        <script src=\"lib/CryptoJS/components/enc-base64.js\"></script>\n        <script src=\"lib/url-template/url-template.js\"></script>\n        <script src=\"lib/apiGatewayCore/sigV4Client.js\"></script>\n        <script src=\"lib/apiGatewayCore/apiGatewayClient.js\"></script>\n        <script src=\"lib/apiGatewayCore/simpleHttpClient.js\"></script>\n        <script src=\"lib/apiGatewayCore/utils.js\"></script>\n        <!-- This is the file that contains the API gateway endpoint... -->\n        <script src=\"assets/js/constants.js\"></script>\n\n        <!-- Angularjs app and controllers -->\n        <script src=\"app.js\"></script>\n        <script src=\"factories/utils.js\"></script>\n        <script src=\"modules/signin/signin.js\"></script>\n        <script src=\"modules/signup/signup.js\"></script>\n        <script src=\"modules/confirm/confirm.js\"></script>\n        <script src=\"modules/chat/chat.js\"></script>\n        <script src=\"modules/chat/chatPanel.js\"></script>\n        <script src=\"modules/chat/talkersPanel.js\"></script>\n        <script src=\"modules/chat/chatMessages.js\"></script>\n        <!-- <script src=\"app/controllers/loginController.js\"></script>\n        <script src=\"app/controllers/chatMessageController.js\"></script>\n        <script src=\"app/controllers/chatPanelController.js\"></script>\n        <script src=\"app/controllers/talkersPanelController.js\"></script> -->\n    </body>\n</html>\n"
  },
  {
    "path": "S3WebApp/S3/lib/CryptoJS/components/enc-base64.js",
    "content": "/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n(function () {\n    // Shortcuts\n    var C = CryptoJS;\n    var C_lib = C.lib;\n    var WordArray = C_lib.WordArray;\n    var C_enc = C.enc;\n\n    /**\n     * Base64 encoding strategy.\n     */\n    var Base64 = C_enc.Base64 = {\n        /**\n         * Converts a word array to a Base64 string.\n         *\n         * @param {WordArray} wordArray The word array.\n         *\n         * @return {string} The Base64 string.\n         *\n         * @static\n         *\n         * @example\n         *\n         *     var base64String = CryptoJS.enc.Base64.stringify(wordArray);\n         */\n        stringify: function (wordArray) {\n            // Shortcuts\n            var words = wordArray.words;\n            var sigBytes = wordArray.sigBytes;\n            var map = this._map;\n\n            // Clamp excess bits\n            wordArray.clamp();\n\n            // Convert\n            var base64Chars = [];\n            for (var i = 0; i < sigBytes; i += 3) {\n                var byte1 = (words[i >>> 2]       >>> (24 - (i % 4) * 8))       & 0xff;\n                var byte2 = (words[(i + 1) >>> 2] >>> (24 - ((i + 1) % 4) * 8)) & 0xff;\n                var byte3 = (words[(i + 2) >>> 2] >>> (24 - ((i + 2) % 4) * 8)) & 0xff;\n\n                var triplet = (byte1 << 16) | (byte2 << 8) | byte3;\n\n                for (var j = 0; (j < 4) && (i + j * 0.75 < sigBytes); j++) {\n                    base64Chars.push(map.charAt((triplet >>> (6 * (3 - j))) & 0x3f));\n                }\n            }\n\n            // Add padding\n            var paddingChar = map.charAt(64);\n            if (paddingChar) {\n                while (base64Chars.length % 4) {\n                    base64Chars.push(paddingChar);\n                }\n            }\n\n            return base64Chars.join('');\n        },\n\n        /**\n         * Converts a Base64 string to a word array.\n         *\n         * @param {string} base64Str The Base64 string.\n         *\n         * @return {WordArray} The word array.\n         *\n         * @static\n         *\n         * @example\n         *\n         *     var wordArray = CryptoJS.enc.Base64.parse(base64String);\n         */\n        parse: function (base64Str) {\n            // Shortcuts\n            var base64StrLength = base64Str.length;\n            var map = this._map;\n\n            // Ignore padding\n            var paddingChar = map.charAt(64);\n            if (paddingChar) {\n                var paddingIndex = base64Str.indexOf(paddingChar);\n                if (paddingIndex != -1) {\n                    base64StrLength = paddingIndex;\n                }\n            }\n\n            // Convert\n            var words = [];\n            var nBytes = 0;\n            for (var i = 0; i < base64StrLength; i++) {\n                if (i % 4) {\n                    var bits1 = map.indexOf(base64Str.charAt(i - 1)) << ((i % 4) * 2);\n                    var bits2 = map.indexOf(base64Str.charAt(i)) >>> (6 - (i % 4) * 2);\n                    words[nBytes >>> 2] |= (bits1 | bits2) << (24 - (nBytes % 4) * 8);\n                    nBytes++;\n                }\n            }\n\n            return WordArray.create(words, nBytes);\n        },\n\n        _map: 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='\n    };\n}());\n"
  },
  {
    "path": "S3WebApp/S3/lib/CryptoJS/components/hmac.js",
    "content": "/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\n(function () {\r\n    // Shortcuts\r\n    var C = CryptoJS;\r\n    var C_lib = C.lib;\r\n    var Base = C_lib.Base;\r\n    var C_enc = C.enc;\r\n    var Utf8 = C_enc.Utf8;\r\n    var C_algo = C.algo;\r\n\r\n    /**\r\n     * HMAC algorithm.\r\n     */\r\n    var HMAC = C_algo.HMAC = Base.extend({\r\n        /**\r\n         * Initializes a newly created HMAC.\r\n         *\r\n         * @param {Hasher} hasher The hash algorithm to use.\r\n         * @param {WordArray|string} key The secret key.\r\n         *\r\n         * @example\r\n         *\r\n         *     var hmacHasher = CryptoJS.algo.HMAC.create(CryptoJS.algo.SHA256, key);\r\n         */\r\n        init: function (hasher, key) {\r\n            // Init hasher\r\n            hasher = this._hasher = new hasher.init();\r\n\r\n            // Convert string to WordArray, else assume WordArray already\r\n            if (typeof key == 'string') {\r\n                key = Utf8.parse(key);\r\n            }\r\n\r\n            // Shortcuts\r\n            var hasherBlockSize = hasher.blockSize;\r\n            var hasherBlockSizeBytes = hasherBlockSize * 4;\r\n\r\n            // Allow arbitrary length keys\r\n            if (key.sigBytes > hasherBlockSizeBytes) {\r\n                key = hasher.finalize(key);\r\n            }\r\n\r\n            // Clamp excess bits\r\n            key.clamp();\r\n\r\n            // Clone key for inner and outer pads\r\n            var oKey = this._oKey = key.clone();\r\n            var iKey = this._iKey = key.clone();\r\n\r\n            // Shortcuts\r\n            var oKeyWords = oKey.words;\r\n            var iKeyWords = iKey.words;\r\n\r\n            // XOR keys with pad constants\r\n            for (var i = 0; i < hasherBlockSize; i++) {\r\n                oKeyWords[i] ^= 0x5c5c5c5c;\r\n                iKeyWords[i] ^= 0x36363636;\r\n            }\r\n            oKey.sigBytes = iKey.sigBytes = hasherBlockSizeBytes;\r\n\r\n            // Set initial values\r\n            this.reset();\r\n        },\r\n\r\n        /**\r\n         * Resets this HMAC to its initial state.\r\n         *\r\n         * @example\r\n         *\r\n         *     hmacHasher.reset();\r\n         */\r\n        reset: function () {\r\n            // Shortcut\r\n            var hasher = this._hasher;\r\n\r\n            // Reset\r\n            hasher.reset();\r\n            hasher.update(this._iKey);\r\n        },\r\n\r\n        /**\r\n         * Updates this HMAC with a message.\r\n         *\r\n         * @param {WordArray|string} messageUpdate The message to append.\r\n         *\r\n         * @return {HMAC} This HMAC instance.\r\n         *\r\n         * @example\r\n         *\r\n         *     hmacHasher.update('message');\r\n         *     hmacHasher.update(wordArray);\r\n         */\r\n        update: function (messageUpdate) {\r\n            this._hasher.update(messageUpdate);\r\n\r\n            // Chainable\r\n            return this;\r\n        },\r\n\r\n        /**\r\n         * Finalizes the HMAC computation.\r\n         * Note that the finalize operation is effectively a destructive, read-once operation.\r\n         *\r\n         * @param {WordArray|string} messageUpdate (Optional) A final message update.\r\n         *\r\n         * @return {WordArray} The HMAC.\r\n         *\r\n         * @example\r\n         *\r\n         *     var hmac = hmacHasher.finalize();\r\n         *     var hmac = hmacHasher.finalize('message');\r\n         *     var hmac = hmacHasher.finalize(wordArray);\r\n         */\r\n        finalize: function (messageUpdate) {\r\n            // Shortcut\r\n            var hasher = this._hasher;\r\n\r\n            // Compute HMAC\r\n            var innerHash = hasher.finalize(messageUpdate);\r\n            hasher.reset();\r\n            var hmac = hasher.finalize(this._oKey.clone().concat(innerHash));\r\n\r\n            return hmac;\r\n        }\r\n    });\r\n}());\r\n"
  },
  {
    "path": "S3WebApp/S3/lib/CryptoJS/rollups/hmac-sha256.js",
    "content": "/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS=CryptoJS||function(h,s){var f={},g=f.lib={},q=function(){},m=g.Base={extend:function(a){q.prototype=this;var c=new q;a&&c.mixIn(a);c.hasOwnProperty(\"init\")||(c.init=function(){c.$super.init.apply(this,arguments)});c.init.prototype=c;c.$super=this;return c},create:function(){var a=this.extend();a.init.apply(a,arguments);return a},init:function(){},mixIn:function(a){for(var c in a)a.hasOwnProperty(c)&&(this[c]=a[c]);a.hasOwnProperty(\"toString\")&&(this.toString=a.toString)},clone:function(){return this.init.prototype.extend(this)}},\nr=g.WordArray=m.extend({init:function(a,c){a=this.words=a||[];this.sigBytes=c!=s?c:4*a.length},toString:function(a){return(a||k).stringify(this)},concat:function(a){var c=this.words,d=a.words,b=this.sigBytes;a=a.sigBytes;this.clamp();if(b%4)for(var e=0;e<a;e++)c[b+e>>>2]|=(d[e>>>2]>>>24-8*(e%4)&255)<<24-8*((b+e)%4);else if(65535<d.length)for(e=0;e<a;e+=4)c[b+e>>>2]=d[e>>>2];else c.push.apply(c,d);this.sigBytes+=a;return this},clamp:function(){var a=this.words,c=this.sigBytes;a[c>>>2]&=4294967295<<\n32-8*(c%4);a.length=h.ceil(c/4)},clone:function(){var a=m.clone.call(this);a.words=this.words.slice(0);return a},random:function(a){for(var c=[],d=0;d<a;d+=4)c.push(4294967296*h.random()|0);return new r.init(c,a)}}),l=f.enc={},k=l.Hex={stringify:function(a){var c=a.words;a=a.sigBytes;for(var d=[],b=0;b<a;b++){var e=c[b>>>2]>>>24-8*(b%4)&255;d.push((e>>>4).toString(16));d.push((e&15).toString(16))}return d.join(\"\")},parse:function(a){for(var c=a.length,d=[],b=0;b<c;b+=2)d[b>>>3]|=parseInt(a.substr(b,\n2),16)<<24-4*(b%8);return new r.init(d,c/2)}},n=l.Latin1={stringify:function(a){var c=a.words;a=a.sigBytes;for(var d=[],b=0;b<a;b++)d.push(String.fromCharCode(c[b>>>2]>>>24-8*(b%4)&255));return d.join(\"\")},parse:function(a){for(var c=a.length,d=[],b=0;b<c;b++)d[b>>>2]|=(a.charCodeAt(b)&255)<<24-8*(b%4);return new r.init(d,c)}},j=l.Utf8={stringify:function(a){try{return decodeURIComponent(escape(n.stringify(a)))}catch(c){throw Error(\"Malformed UTF-8 data\");}},parse:function(a){return n.parse(unescape(encodeURIComponent(a)))}},\nu=g.BufferedBlockAlgorithm=m.extend({reset:function(){this._data=new r.init;this._nDataBytes=0},_append:function(a){\"string\"==typeof a&&(a=j.parse(a));this._data.concat(a);this._nDataBytes+=a.sigBytes},_process:function(a){var c=this._data,d=c.words,b=c.sigBytes,e=this.blockSize,f=b/(4*e),f=a?h.ceil(f):h.max((f|0)-this._minBufferSize,0);a=f*e;b=h.min(4*a,b);if(a){for(var g=0;g<a;g+=e)this._doProcessBlock(d,g);g=d.splice(0,a);c.sigBytes-=b}return new r.init(g,b)},clone:function(){var a=m.clone.call(this);\na._data=this._data.clone();return a},_minBufferSize:0});g.Hasher=u.extend({cfg:m.extend(),init:function(a){this.cfg=this.cfg.extend(a);this.reset()},reset:function(){u.reset.call(this);this._doReset()},update:function(a){this._append(a);this._process();return this},finalize:function(a){a&&this._append(a);return this._doFinalize()},blockSize:16,_createHelper:function(a){return function(c,d){return(new a.init(d)).finalize(c)}},_createHmacHelper:function(a){return function(c,d){return(new t.HMAC.init(a,\nd)).finalize(c)}}});var t=f.algo={};return f}(Math);\n(function(h){for(var s=CryptoJS,f=s.lib,g=f.WordArray,q=f.Hasher,f=s.algo,m=[],r=[],l=function(a){return 4294967296*(a-(a|0))|0},k=2,n=0;64>n;){var j;a:{j=k;for(var u=h.sqrt(j),t=2;t<=u;t++)if(!(j%t)){j=!1;break a}j=!0}j&&(8>n&&(m[n]=l(h.pow(k,0.5))),r[n]=l(h.pow(k,1/3)),n++);k++}var a=[],f=f.SHA256=q.extend({_doReset:function(){this._hash=new g.init(m.slice(0))},_doProcessBlock:function(c,d){for(var b=this._hash.words,e=b[0],f=b[1],g=b[2],j=b[3],h=b[4],m=b[5],n=b[6],q=b[7],p=0;64>p;p++){if(16>p)a[p]=\nc[d+p]|0;else{var k=a[p-15],l=a[p-2];a[p]=((k<<25|k>>>7)^(k<<14|k>>>18)^k>>>3)+a[p-7]+((l<<15|l>>>17)^(l<<13|l>>>19)^l>>>10)+a[p-16]}k=q+((h<<26|h>>>6)^(h<<21|h>>>11)^(h<<7|h>>>25))+(h&m^~h&n)+r[p]+a[p];l=((e<<30|e>>>2)^(e<<19|e>>>13)^(e<<10|e>>>22))+(e&f^e&g^f&g);q=n;n=m;m=h;h=j+k|0;j=g;g=f;f=e;e=k+l|0}b[0]=b[0]+e|0;b[1]=b[1]+f|0;b[2]=b[2]+g|0;b[3]=b[3]+j|0;b[4]=b[4]+h|0;b[5]=b[5]+m|0;b[6]=b[6]+n|0;b[7]=b[7]+q|0},_doFinalize:function(){var a=this._data,d=a.words,b=8*this._nDataBytes,e=8*a.sigBytes;\nd[e>>>5]|=128<<24-e%32;d[(e+64>>>9<<4)+14]=h.floor(b/4294967296);d[(e+64>>>9<<4)+15]=b;a.sigBytes=4*d.length;this._process();return this._hash},clone:function(){var a=q.clone.call(this);a._hash=this._hash.clone();return a}});s.SHA256=q._createHelper(f);s.HmacSHA256=q._createHmacHelper(f)})(Math);\n(function(){var h=CryptoJS,s=h.enc.Utf8;h.algo.HMAC=h.lib.Base.extend({init:function(f,g){f=this._hasher=new f.init;\"string\"==typeof g&&(g=s.parse(g));var h=f.blockSize,m=4*h;g.sigBytes>m&&(g=f.finalize(g));g.clamp();for(var r=this._oKey=g.clone(),l=this._iKey=g.clone(),k=r.words,n=l.words,j=0;j<h;j++)k[j]^=1549556828,n[j]^=909522486;r.sigBytes=l.sigBytes=m;this.reset()},reset:function(){var f=this._hasher;f.reset();f.update(this._iKey)},update:function(f){this._hasher.update(f);return this},finalize:function(f){var g=\nthis._hasher;f=g.finalize(f);g.reset();return g.finalize(this._oKey.clone().concat(f))}})})();\n"
  },
  {
    "path": "S3WebApp/S3/lib/CryptoJS/rollups/sha256.js",
    "content": "/*\nCryptoJS v3.1.2\ncode.google.com/p/crypto-js\n(c) 2009-2013 by Jeff Mott. All rights reserved.\ncode.google.com/p/crypto-js/wiki/License\n*/\nvar CryptoJS=CryptoJS||function(h,s){var f={},t=f.lib={},g=function(){},j=t.Base={extend:function(a){g.prototype=this;var c=new g;a&&c.mixIn(a);c.hasOwnProperty(\"init\")||(c.init=function(){c.$super.init.apply(this,arguments)});c.init.prototype=c;c.$super=this;return c},create:function(){var a=this.extend();a.init.apply(a,arguments);return a},init:function(){},mixIn:function(a){for(var c in a)a.hasOwnProperty(c)&&(this[c]=a[c]);a.hasOwnProperty(\"toString\")&&(this.toString=a.toString)},clone:function(){return this.init.prototype.extend(this)}},\nq=t.WordArray=j.extend({init:function(a,c){a=this.words=a||[];this.sigBytes=c!=s?c:4*a.length},toString:function(a){return(a||u).stringify(this)},concat:function(a){var c=this.words,d=a.words,b=this.sigBytes;a=a.sigBytes;this.clamp();if(b%4)for(var e=0;e<a;e++)c[b+e>>>2]|=(d[e>>>2]>>>24-8*(e%4)&255)<<24-8*((b+e)%4);else if(65535<d.length)for(e=0;e<a;e+=4)c[b+e>>>2]=d[e>>>2];else c.push.apply(c,d);this.sigBytes+=a;return this},clamp:function(){var a=this.words,c=this.sigBytes;a[c>>>2]&=4294967295<<\n32-8*(c%4);a.length=h.ceil(c/4)},clone:function(){var a=j.clone.call(this);a.words=this.words.slice(0);return a},random:function(a){for(var c=[],d=0;d<a;d+=4)c.push(4294967296*h.random()|0);return new q.init(c,a)}}),v=f.enc={},u=v.Hex={stringify:function(a){var c=a.words;a=a.sigBytes;for(var d=[],b=0;b<a;b++){var e=c[b>>>2]>>>24-8*(b%4)&255;d.push((e>>>4).toString(16));d.push((e&15).toString(16))}return d.join(\"\")},parse:function(a){for(var c=a.length,d=[],b=0;b<c;b+=2)d[b>>>3]|=parseInt(a.substr(b,\n2),16)<<24-4*(b%8);return new q.init(d,c/2)}},k=v.Latin1={stringify:function(a){var c=a.words;a=a.sigBytes;for(var d=[],b=0;b<a;b++)d.push(String.fromCharCode(c[b>>>2]>>>24-8*(b%4)&255));return d.join(\"\")},parse:function(a){for(var c=a.length,d=[],b=0;b<c;b++)d[b>>>2]|=(a.charCodeAt(b)&255)<<24-8*(b%4);return new q.init(d,c)}},l=v.Utf8={stringify:function(a){try{return decodeURIComponent(escape(k.stringify(a)))}catch(c){throw Error(\"Malformed UTF-8 data\");}},parse:function(a){return k.parse(unescape(encodeURIComponent(a)))}},\nx=t.BufferedBlockAlgorithm=j.extend({reset:function(){this._data=new q.init;this._nDataBytes=0},_append:function(a){\"string\"==typeof a&&(a=l.parse(a));this._data.concat(a);this._nDataBytes+=a.sigBytes},_process:function(a){var c=this._data,d=c.words,b=c.sigBytes,e=this.blockSize,f=b/(4*e),f=a?h.ceil(f):h.max((f|0)-this._minBufferSize,0);a=f*e;b=h.min(4*a,b);if(a){for(var m=0;m<a;m+=e)this._doProcessBlock(d,m);m=d.splice(0,a);c.sigBytes-=b}return new q.init(m,b)},clone:function(){var a=j.clone.call(this);\na._data=this._data.clone();return a},_minBufferSize:0});t.Hasher=x.extend({cfg:j.extend(),init:function(a){this.cfg=this.cfg.extend(a);this.reset()},reset:function(){x.reset.call(this);this._doReset()},update:function(a){this._append(a);this._process();return this},finalize:function(a){a&&this._append(a);return this._doFinalize()},blockSize:16,_createHelper:function(a){return function(c,d){return(new a.init(d)).finalize(c)}},_createHmacHelper:function(a){return function(c,d){return(new w.HMAC.init(a,\nd)).finalize(c)}}});var w=f.algo={};return f}(Math);\n(function(h){for(var s=CryptoJS,f=s.lib,t=f.WordArray,g=f.Hasher,f=s.algo,j=[],q=[],v=function(a){return 4294967296*(a-(a|0))|0},u=2,k=0;64>k;){var l;a:{l=u;for(var x=h.sqrt(l),w=2;w<=x;w++)if(!(l%w)){l=!1;break a}l=!0}l&&(8>k&&(j[k]=v(h.pow(u,0.5))),q[k]=v(h.pow(u,1/3)),k++);u++}var a=[],f=f.SHA256=g.extend({_doReset:function(){this._hash=new t.init(j.slice(0))},_doProcessBlock:function(c,d){for(var b=this._hash.words,e=b[0],f=b[1],m=b[2],h=b[3],p=b[4],j=b[5],k=b[6],l=b[7],n=0;64>n;n++){if(16>n)a[n]=\nc[d+n]|0;else{var r=a[n-15],g=a[n-2];a[n]=((r<<25|r>>>7)^(r<<14|r>>>18)^r>>>3)+a[n-7]+((g<<15|g>>>17)^(g<<13|g>>>19)^g>>>10)+a[n-16]}r=l+((p<<26|p>>>6)^(p<<21|p>>>11)^(p<<7|p>>>25))+(p&j^~p&k)+q[n]+a[n];g=((e<<30|e>>>2)^(e<<19|e>>>13)^(e<<10|e>>>22))+(e&f^e&m^f&m);l=k;k=j;j=p;p=h+r|0;h=m;m=f;f=e;e=r+g|0}b[0]=b[0]+e|0;b[1]=b[1]+f|0;b[2]=b[2]+m|0;b[3]=b[3]+h|0;b[4]=b[4]+p|0;b[5]=b[5]+j|0;b[6]=b[6]+k|0;b[7]=b[7]+l|0},_doFinalize:function(){var a=this._data,d=a.words,b=8*this._nDataBytes,e=8*a.sigBytes;\nd[e>>>5]|=128<<24-e%32;d[(e+64>>>9<<4)+14]=h.floor(b/4294967296);d[(e+64>>>9<<4)+15]=b;a.sigBytes=4*d.length;this._process();return this._hash},clone:function(){var a=g.clone.call(this);a._hash=this._hash.clone();return a}});s.SHA256=g._createHelper(f);s.HmacSHA256=g._createHmacHelper(f)})(Math);\n"
  },
  {
    "path": "S3WebApp/S3/lib/apiGatewayCore/apiGatewayClient.js",
    "content": "/*\n * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\").\n * You may not use this file except in compliance with the License.\n * A copy of the License is located at\n *\n *  http://aws.amazon.com/apache2.0\n *\n * or in the \"license\" file accompanying this file. This file is distributed\n * on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either\n * express or implied. See the License for the specific language governing\n * permissions and limitations under the License.\n */\n \nvar apiGateway = apiGateway || {};\napiGateway.core = apiGateway.core || {};\n\napiGateway.core.apiGatewayClientFactory = {};\napiGateway.core.apiGatewayClientFactory.newClient = function (simpleHttpClientConfig, sigV4ClientConfig) {\n    var apiGatewayClient = { };\n    //Spin up 2 httpClients, one for simple requests, one for SigV4\n    var sigV4Client = apiGateway.core.sigV4ClientFactory.newClient(sigV4ClientConfig);\n    var simpleHttpClient = apiGateway.core.simpleHttpClientFactory.newClient(simpleHttpClientConfig);\n\n    apiGatewayClient.makeRequest = function (request, authType, additionalParams, apiKey) {\n        //Default the request to use the simple http client\n        var clientToUse = simpleHttpClient;\n\n        //Attach the apiKey to the headers request if one was provided\n        if (apiKey !== undefined && apiKey !== '' && apiKey !== null) {\n            request.headers['x-api-key'] = apiKey;\n        }\n\n        if (request.body === undefined || request.body === '' || request.body === null || Object.keys(request.body).length === 0) {\n            request.body = undefined;\n        }\n\n        // If the user specified any additional headers or query params that may not have been modeled\n        // merge them into the appropriate request properties\n        request.headers = apiGateway.core.utils.mergeInto(request.headers, additionalParams.headers);\n        request.queryParams = apiGateway.core.utils.mergeInto(request.queryParams, additionalParams.queryParams);\n\n        //If an auth type was specified inject the appropriate auth client\n        if (authType === 'AWS_IAM') {\n            clientToUse = sigV4Client;\n        }\n\n        //Call the selected http client to make the request, returning a promise once the request is sent\n        return clientToUse.makeRequest(request);\n    };\n    return apiGatewayClient;\n};\n"
  },
  {
    "path": "S3WebApp/S3/lib/apiGatewayCore/sigV4Client.js",
    "content": "/*\n * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\").\n * You may not use this file except in compliance with the License.\n * A copy of the License is located at\n *\n *  http://aws.amazon.com/apache2.0\n *\n * or in the \"license\" file accompanying this file. This file is distributed\n * on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either\n * express or implied. See the License for the specific language governing\n * permissions and limitations under the License.\n */\n \nvar apiGateway = apiGateway || {};\napiGateway.core = apiGateway.core || {};\n\napiGateway.core.sigV4ClientFactory = {};\napiGateway.core.sigV4ClientFactory.newClient = function (config) {\n    var AWS_SHA_256 = 'AWS4-HMAC-SHA256';\n    var AWS4_REQUEST = 'aws4_request';\n    var AWS4 = 'AWS4';\n    var X_AMZ_DATE = 'x-amz-date';\n    var X_AMZ_SECURITY_TOKEN = 'x-amz-security-token';\n    var HOST = 'host';\n    var AUTHORIZATION = 'Authorization';\n\n    function hash(value) {\n        return CryptoJS.SHA256(value);\n    }\n\n    function hexEncode(value) {\n        return value.toString(CryptoJS.enc.Hex);\n    }\n\n    function hmac(secret, value) {\n        return CryptoJS.HmacSHA256(value, secret, {asBytes: true});\n    }\n\n    function buildCanonicalRequest(method, path, queryParams, headers, payload) {\n        return method + '\\n' +\n            buildCanonicalUri(path) + '\\n' +\n            buildCanonicalQueryString(queryParams) + '\\n' +\n            buildCanonicalHeaders(headers) + '\\n' +\n            buildCanonicalSignedHeaders(headers) + '\\n' +\n            hexEncode(hash(payload));\n    }\n\n    function hashCanonicalRequest(request) {\n        return hexEncode(hash(request));\n    }\n\n    function buildCanonicalUri(uri) {\n        return encodeURI(uri);\n    }\n\n    function buildCanonicalQueryString(queryParams) {\n        if (Object.keys(queryParams).length < 1) {\n            return '';\n        }\n\n        var sortedQueryParams = [];\n        for (var property in queryParams) {\n            if (queryParams.hasOwnProperty(property)) {\n                sortedQueryParams.push(property);\n            }\n        }\n        sortedQueryParams.sort();\n\n        var canonicalQueryString = '';\n        for (var i = 0; i < sortedQueryParams.length; i++) {\n            canonicalQueryString += sortedQueryParams[i] + '=' + encodeURIComponent(queryParams[sortedQueryParams[i]]) + '&';\n        }\n        return canonicalQueryString.substr(0, canonicalQueryString.length - 1);\n    }\n\n    function buildCanonicalHeaders(headers) {\n        var canonicalHeaders = '';\n        var sortedKeys = [];\n        for (var property in headers) {\n            if (headers.hasOwnProperty(property)) {\n                sortedKeys.push(property);\n            }\n        }\n        sortedKeys.sort();\n\n        for (var i = 0; i < sortedKeys.length; i++) {\n            canonicalHeaders += sortedKeys[i].toLowerCase() + ':' + headers[sortedKeys[i]] + '\\n';\n        }\n        return canonicalHeaders;\n    }\n\n    function buildCanonicalSignedHeaders(headers) {\n        var sortedKeys = [];\n        for (var property in headers) {\n            if (headers.hasOwnProperty(property)) {\n                sortedKeys.push(property.toLowerCase());\n            }\n        }\n        sortedKeys.sort();\n\n        return sortedKeys.join(';');\n    }\n\n    function buildStringToSign(datetime, credentialScope, hashedCanonicalRequest) {\n        return AWS_SHA_256 + '\\n' +\n            datetime + '\\n' +\n            credentialScope + '\\n' +\n            hashedCanonicalRequest;\n    }\n\n    function buildCredentialScope(datetime, region, service) {\n        return datetime.substr(0, 8) + '/' + region + '/' + service + '/' + AWS4_REQUEST\n    }\n\n    function calculateSigningKey(secretKey, datetime, region, service) {\n        return hmac(hmac(hmac(hmac(AWS4 + secretKey, datetime.substr(0, 8)), region), service), AWS4_REQUEST);\n    }\n\n    function calculateSignature(key, stringToSign) {\n        return hexEncode(hmac(key, stringToSign));\n    }\n\n    function buildAuthorizationHeader(accessKey, credentialScope, headers, signature) {\n        return AWS_SHA_256 + ' Credential=' + accessKey + '/' + credentialScope + ', SignedHeaders=' + buildCanonicalSignedHeaders(headers) + ', Signature=' + signature;\n    }\n\n    var awsSigV4Client = { };\n    if(config.accessKey === undefined || config.secretKey === undefined) {\n        return awsSigV4Client;\n    }\n    awsSigV4Client.accessKey = apiGateway.core.utils.assertDefined(config.accessKey, 'accessKey');\n    awsSigV4Client.secretKey = apiGateway.core.utils.assertDefined(config.secretKey, 'secretKey');\n    awsSigV4Client.sessionToken = config.sessionToken;\n    awsSigV4Client.serviceName = apiGateway.core.utils.assertDefined(config.serviceName, 'serviceName');\n    awsSigV4Client.region = apiGateway.core.utils.assertDefined(config.region, 'region');\n    awsSigV4Client.endpoint = apiGateway.core.utils.assertDefined(config.endpoint, 'endpoint');\n\n    awsSigV4Client.makeRequest = function (request) {\n        var verb = apiGateway.core.utils.assertDefined(request.verb, 'verb');\n        var path = apiGateway.core.utils.assertDefined(request.path, 'path');\n        var queryParams = apiGateway.core.utils.copy(request.queryParams);\n        if (queryParams === undefined) {\n            queryParams = {};\n        }\n        var headers = apiGateway.core.utils.copy(request.headers);\n        if (headers === undefined) {\n            headers = {};\n        }\n\n        //If the user has not specified an override for Content type the use default\n        if(headers['Content-Type'] === undefined) {\n            headers['Content-Type'] = config.defaultContentType;\n        }\n\n        //If the user has not specified an override for Accept type the use default\n        if(headers['Accept'] === undefined) {\n            headers['Accept'] = config.defaultAcceptType;\n        }\n\n        var body = apiGateway.core.utils.copy(request.body);\n        if (body === undefined || verb === 'GET') { // override request body and set to empty when signing GET requests\n            body = '';\n        }  else {\n            body = JSON.stringify(body);\n        }\n\n        //If there is no body remove the content-type header so it is not included in SigV4 calculation\n        if(body === '' || body === undefined || body === null) {\n            delete headers['Content-Type'];\n        }\n\n        var datetime = new Date().toISOString().replace(/\\.\\d{3}Z$/, 'Z').replace(/[:\\-]|\\.\\d{3}/g, '');\n        headers[X_AMZ_DATE] = datetime;\n        var parser = document.createElement('a');\n        parser.href = awsSigV4Client.endpoint;\n        headers[HOST] = parser.hostname;\n\n        var canonicalRequest = buildCanonicalRequest(verb, path, queryParams, headers, body);\n        var hashedCanonicalRequest = hashCanonicalRequest(canonicalRequest);\n        var credentialScope = buildCredentialScope(datetime, awsSigV4Client.region, awsSigV4Client.serviceName);\n        var stringToSign = buildStringToSign(datetime, credentialScope, hashedCanonicalRequest);\n        var signingKey = calculateSigningKey(awsSigV4Client.secretKey, datetime, awsSigV4Client.region, awsSigV4Client.serviceName);\n        var signature = calculateSignature(signingKey, stringToSign);\n        headers[AUTHORIZATION] = buildAuthorizationHeader(awsSigV4Client.accessKey, credentialScope, headers, signature);\n        if(awsSigV4Client.sessionToken !== undefined && awsSigV4Client.sessionToken !== '') {\n            headers[X_AMZ_SECURITY_TOKEN] = awsSigV4Client.sessionToken;\n        }\n        delete headers[HOST];\n\n        var url = config.endpoint + path;\n        var queryString = buildCanonicalQueryString(queryParams);\n        if (queryString != '') {\n            url += '?' + queryString;\n        }\n\n        //Need to re-attach Content-Type if it is not specified at this point\n        if(headers['Content-Type'] === undefined) {\n            headers['Content-Type'] = config.defaultContentType;\n        }\n\n        var signedRequest = {\n            method: verb,\n            url: url,\n            headers: headers,\n            data: body\n        };\n        return axios(signedRequest);\n    };\n\n    return awsSigV4Client;\n};\n"
  },
  {
    "path": "S3WebApp/S3/lib/apiGatewayCore/simpleHttpClient.js",
    "content": "/*\n * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\").\n * You may not use this file except in compliance with the License.\n * A copy of the License is located at\n *\n *  http://aws.amazon.com/apache2.0\n *\n * or in the \"license\" file accompanying this file. This file is distributed\n * on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either\n * express or implied. See the License for the specific language governing\n * permissions and limitations under the License.\n */\n \nvar apiGateway = apiGateway || {};\napiGateway.core = apiGateway.core || {};\n\napiGateway.core.simpleHttpClientFactory = {};\napiGateway.core.simpleHttpClientFactory.newClient = function (config) {\n    function buildCanonicalQueryString(queryParams) {\n        //Build a properly encoded query string from a QueryParam object\n        if (Object.keys(queryParams).length < 1) {\n            return '';\n        }\n\n        var canonicalQueryString = '';\n        for (var property in queryParams) {\n            if (queryParams.hasOwnProperty(property)) {\n                canonicalQueryString += encodeURIComponent(property) + '=' + encodeURIComponent(queryParams[property]) + '&';\n            }\n        }\n\n        return canonicalQueryString.substr(0, canonicalQueryString.length - 1);\n    }\n\n    var simpleHttpClient = { };\n    simpleHttpClient.endpoint = apiGateway.core.utils.assertDefined(config.endpoint, 'endpoint');\n\n    simpleHttpClient.makeRequest = function (request) {\n        var verb = apiGateway.core.utils.assertDefined(request.verb, 'verb');\n        var path = apiGateway.core.utils.assertDefined(request.path, 'path');\n        var queryParams = apiGateway.core.utils.copy(request.queryParams);\n        if (queryParams === undefined) {\n            queryParams = {};\n        }\n        var headers = apiGateway.core.utils.copy(request.headers);\n        if (headers === undefined) {\n            headers = {};\n        }\n\n        //If the user has not specified an override for Content type the use default\n        if(headers['Content-Type'] === undefined) {\n            headers['Content-Type'] = config.defaultContentType;\n        }\n\n        //If the user has not specified an override for Accept type the use default\n        if(headers['Accept'] === undefined) {\n            headers['Accept'] = config.defaultAcceptType;\n        }\n\n        var body = apiGateway.core.utils.copy(request.body);\n        if (body === undefined) {\n            body = '';\n        }\n\n        var url = config.endpoint + path;\n        var queryString = buildCanonicalQueryString(queryParams);\n        if (queryString != '') {\n            url += '?' + queryString;\n        }\n        var simpleHttpRequest = {\n            method: verb,\n            url: url,\n            headers: headers,\n            data: body\n        };\n        return axios(simpleHttpRequest);\n    };\n    return simpleHttpClient;\n};"
  },
  {
    "path": "S3WebApp/S3/lib/apiGatewayCore/utils.js",
    "content": "/*\n * Copyright 2010-2016 Amazon.com, Inc. or its affiliates. All Rights Reserved.\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\").\n * You may not use this file except in compliance with the License.\n * A copy of the License is located at\n *\n *  http://aws.amazon.com/apache2.0\n *\n * or in the \"license\" file accompanying this file. This file is distributed\n * on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either\n * express or implied. See the License for the specific language governing\n * permissions and limitations under the License.\n */\n \nvar apiGateway = apiGateway || {};\napiGateway.core = apiGateway.core || {};\n\napiGateway.core.utils = {\n    assertDefined: function (object, name) {\n        if (object === undefined) {\n            throw name + ' must be defined';\n        } else {\n            return object;\n        }\n    },\n    assertParametersDefined: function (params, keys, ignore) {\n        if (keys === undefined) {\n            return;\n        }\n        if (keys.length > 0 && params === undefined) {\n            params = {};\n        }\n        for (var i = 0; i < keys.length; i++) {\n            if(!apiGateway.core.utils.contains(ignore, keys[i])) {\n                apiGateway.core.utils.assertDefined(params[keys[i]], keys[i]);\n            }\n        }\n    },\n    parseParametersToObject: function (params, keys) {\n        if (params === undefined) {\n            return {};\n        }\n        var object = { };\n        for (var i = 0; i < keys.length; i++) {\n            object[keys[i]] = params[keys[i]];\n        }\n        return object;\n    },\n    contains: function(a, obj) {\n        if(a === undefined) { return false;}\n        var i = a.length;\n        while (i--) {\n            if (a[i] === obj) {\n                return true;\n            }\n        }\n        return false;\n    },\n    copy: function (obj) {\n        if (null == obj || \"object\" != typeof obj) return obj;\n        var copy = obj.constructor();\n        for (var attr in obj) {\n            if (obj.hasOwnProperty(attr)) copy[attr] = obj[attr];\n        }\n        return copy;\n    },\n    mergeInto: function (baseObj, additionalProps) {\n        if (null == baseObj || \"object\" != typeof baseObj) return baseObj;\n        var merged = baseObj.constructor();\n        for (var attr in baseObj) {\n            if (baseObj.hasOwnProperty(attr)) merged[attr] = baseObj[attr];\n        }\n        if (null == additionalProps || \"object\" != typeof additionalProps) return baseObj;\n        for (attr in additionalProps) {\n            if (additionalProps.hasOwnProperty(attr)) merged[attr] = additionalProps[attr];\n        }\n        return merged;\n    }\n};\n"
  },
  {
    "path": "S3WebApp/S3/lib/axios/dist/axios.standalone.js",
    "content": "/*\naxios v0.7.0 \nCopyright (c) 2014 Matt Zabriskie\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE.\n*/\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"axios\"] = factory();\n\telse\n\t\troot[\"axios\"] = factory();\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId])\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\texports: {},\n/******/ \t\t\tid: moduleId,\n/******/ \t\t\tloaded: false\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.loaded = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(0);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ function(module, exports, __webpack_require__) {\n\n\tmodule.exports = __webpack_require__(1);\n\n/***/ },\n/* 1 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tvar defaults = __webpack_require__(2);\n\tvar utils = __webpack_require__(3);\n\tvar dispatchRequest = __webpack_require__(4);\n\tvar InterceptorManager = __webpack_require__(12);\n\t\n\tvar axios = module.exports = function (config) {\n\t  // Allow for axios('example/url'[, config]) a la fetch API\n\t  if (typeof config === 'string') {\n\t    config = utils.merge({\n\t      url: arguments[0]\n\t    }, arguments[1]);\n\t  }\n\t\n\t  config = utils.merge({\n\t    method: 'get',\n\t    headers: {},\n\t    timeout: defaults.timeout,\n\t    transformRequest: defaults.transformRequest,\n\t    transformResponse: defaults.transformResponse\n\t  }, config);\n\t\n\t  // Don't allow overriding defaults.withCredentials\n\t  config.withCredentials = config.withCredentials || defaults.withCredentials;\n\t\n\t  // Hook up interceptors middleware\n\t  var chain = [dispatchRequest, undefined];\n\t  var promise = Promise.resolve(config);\n\t\n\t  axios.interceptors.request.forEach(function (interceptor) {\n\t    chain.unshift(interceptor.fulfilled, interceptor.rejected);\n\t  });\n\t\n\t  axios.interceptors.response.forEach(function (interceptor) {\n\t    chain.push(interceptor.fulfilled, interceptor.rejected);\n\t  });\n\t\n\t  while (chain.length) {\n\t    promise = promise.then(chain.shift(), chain.shift());\n\t  }\n\t\n\t  return promise;\n\t};\n\t\n\t// Expose defaults\n\taxios.defaults = defaults;\n\t\n\t// Expose all/spread\n\taxios.all = function (promises) {\n\t  return Promise.all(promises);\n\t};\n\taxios.spread = __webpack_require__(13);\n\t\n\t// Expose interceptors\n\taxios.interceptors = {\n\t  request: new InterceptorManager(),\n\t  response: new InterceptorManager()\n\t};\n\t\n\t// Provide aliases for supported request methods\n\t(function () {\n\t  function createShortMethods() {\n\t    utils.forEach(arguments, function (method) {\n\t      axios[method] = function (url, config) {\n\t        return axios(utils.merge(config || {}, {\n\t          method: method,\n\t          url: url\n\t        }));\n\t      };\n\t    });\n\t  }\n\t\n\t  function createShortMethodsWithData() {\n\t    utils.forEach(arguments, function (method) {\n\t      axios[method] = function (url, data, config) {\n\t        return axios(utils.merge(config || {}, {\n\t          method: method,\n\t          url: url,\n\t          data: data\n\t        }));\n\t      };\n\t    });\n\t  }\n\t\n\t  createShortMethods('delete', 'get', 'head');\n\t  createShortMethodsWithData('post', 'put', 'patch');\n\t})();\n\n\n/***/ },\n/* 2 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tvar utils = __webpack_require__(3);\n\t\n\tvar PROTECTION_PREFIX = /^\\)\\]\\}',?\\n/;\n\tvar DEFAULT_CONTENT_TYPE = {\n\t  'Content-Type': 'application/json'\n\t};\n\t\n\tmodule.exports = {\n\t  transformRequest: [function (data, headers) {\n\t    if(utils.isFormData(data)) {\n\t      return data;\n\t    }\n\t    if (utils.isArrayBuffer(data)) {\n\t      return data;\n\t    }\n\t    if (utils.isArrayBufferView(data)) {\n\t      return data.buffer;\n\t    }\n\t    if (utils.isObject(data) && !utils.isFile(data) && !utils.isBlob(data)) {\n\t      // Set application/json if no Content-Type has been specified\n\t      if (!utils.isUndefined(headers)) {\n\t        utils.forEach(headers, function (val, key) {\n\t          if (key.toLowerCase() === 'content-type') {\n\t            headers['Content-Type'] = val;\n\t          }\n\t        });\n\t\n\t        if (utils.isUndefined(headers['Content-Type'])) {\n\t          headers['Content-Type'] = 'application/json;charset=utf-8';\n\t        }\n\t      }\n\t      return JSON.stringify(data);\n\t    }\n\t    return data;\n\t  }],\n\t\n\t  transformResponse: [function (data) {\n\t    if (typeof data === 'string') {\n\t      data = data.replace(PROTECTION_PREFIX, '');\n\t      try {\n\t        data = JSON.parse(data);\n\t      } catch (e) { /* Ignore */ }\n\t    }\n\t    return data;\n\t  }],\n\t\n\t  headers: {\n\t    common: {\n\t      'Accept': 'application/json, text/plain, */*'\n\t    },\n\t    patch: utils.merge(DEFAULT_CONTENT_TYPE),\n\t    post: utils.merge(DEFAULT_CONTENT_TYPE),\n\t    put: utils.merge(DEFAULT_CONTENT_TYPE)\n\t  },\n\t\n\t  timeout: 0,\n\t\n\t  xsrfCookieName: 'XSRF-TOKEN',\n\t  xsrfHeaderName: 'X-XSRF-TOKEN'\n\t};\n\n\n/***/ },\n/* 3 */\n/***/ function(module, exports) {\n\n\t'use strict';\n\t\n\t/*global toString:true*/\n\t\n\t// utils is a library of generic helper functions non-specific to axios\n\t\n\tvar toString = Object.prototype.toString;\n\t\n\t/**\n\t * Determine if a value is an Array\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if value is an Array, otherwise false\n\t */\n\tfunction isArray(val) {\n\t  return toString.call(val) === '[object Array]';\n\t}\n\t\n\t/**\n\t * Determine if a value is an ArrayBuffer\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n\t */\n\tfunction isArrayBuffer(val) {\n\t  return toString.call(val) === '[object ArrayBuffer]';\n\t}\n\t\n\t/**\n\t * Determine if a value is a FormData\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if value is an FormData, otherwise false\n\t */\n\tfunction isFormData(val) {\n\t  return toString.call(val) === '[object FormData]';\n\t}\n\t\n\t/**\n\t * Determine if a value is a view on an ArrayBuffer\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n\t */\n\tfunction isArrayBufferView(val) {\n\t  if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n\t    return ArrayBuffer.isView(val);\n\t  } else {\n\t    return (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n\t  }\n\t}\n\t\n\t/**\n\t * Determine if a value is a String\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if value is a String, otherwise false\n\t */\n\tfunction isString(val) {\n\t  return typeof val === 'string';\n\t}\n\t\n\t/**\n\t * Determine if a value is a Number\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if value is a Number, otherwise false\n\t */\n\tfunction isNumber(val) {\n\t  return typeof val === 'number';\n\t}\n\t\n\t/**\n\t * Determine if a value is undefined\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if the value is undefined, otherwise false\n\t */\n\tfunction isUndefined(val) {\n\t  return typeof val === 'undefined';\n\t}\n\t\n\t/**\n\t * Determine if a value is an Object\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if value is an Object, otherwise false\n\t */\n\tfunction isObject(val) {\n\t  return val !== null && typeof val === 'object';\n\t}\n\t\n\t/**\n\t * Determine if a value is a Date\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if value is a Date, otherwise false\n\t */\n\tfunction isDate(val) {\n\t  return toString.call(val) === '[object Date]';\n\t}\n\t\n\t/**\n\t * Determine if a value is a File\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if value is a File, otherwise false\n\t */\n\tfunction isFile(val) {\n\t  return toString.call(val) === '[object File]';\n\t}\n\t\n\t/**\n\t * Determine if a value is a Blob\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if value is a Blob, otherwise false\n\t */\n\tfunction isBlob(val) {\n\t  return toString.call(val) === '[object Blob]';\n\t}\n\t\n\t/**\n\t * Trim excess whitespace off the beginning and end of a string\n\t *\n\t * @param {String} str The String to trim\n\t * @returns {String} The String freed of excess whitespace\n\t */\n\tfunction trim(str) {\n\t  return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n\t}\n\t\n\t/**\n\t * Determine if a value is an Arguments object\n\t *\n\t * @param {Object} val The value to test\n\t * @returns {boolean} True if value is an Arguments object, otherwise false\n\t */\n\tfunction isArguments(val) {\n\t  return toString.call(val) === '[object Arguments]';\n\t}\n\t\n\t/**\n\t * Determine if we're running in a standard browser environment\n\t *\n\t * This allows axios to run in a web worker, and react-native.\n\t * Both environments support XMLHttpRequest, but not fully standard globals.\n\t *\n\t * web workers:\n\t *  typeof window -> undefined\n\t *  typeof document -> undefined\n\t *\n\t * react-native:\n\t *  typeof document.createelement -> undefined\n\t */\n\tfunction isStandardBrowserEnv() {\n\t  return (\n\t    typeof window !== 'undefined' &&\n\t    typeof document !== 'undefined' &&\n\t    typeof document.createElement === 'function'\n\t  );\n\t}\n\t\n\t/**\n\t * Iterate over an Array or an Object invoking a function for each item.\n\t *\n\t * If `obj` is an Array or arguments callback will be called passing\n\t * the value, index, and complete array for each item.\n\t *\n\t * If 'obj' is an Object callback will be called passing\n\t * the value, key, and complete object for each property.\n\t *\n\t * @param {Object|Array} obj The object to iterate\n\t * @param {Function} fn The callback to invoke for each item\n\t */\n\tfunction forEach(obj, fn) {\n\t  // Don't bother if no value provided\n\t  if (obj === null || typeof obj === 'undefined') {\n\t    return;\n\t  }\n\t\n\t  // Check if obj is array-like\n\t  var isArrayLike = isArray(obj) || isArguments(obj);\n\t\n\t  // Force an array if not already something iterable\n\t  if (typeof obj !== 'object' && !isArrayLike) {\n\t    obj = [obj];\n\t  }\n\t\n\t  // Iterate over array values\n\t  if (isArrayLike) {\n\t    for (var i = 0, l = obj.length; i < l; i++) {\n\t      fn.call(null, obj[i], i, obj);\n\t    }\n\t  }\n\t  // Iterate over object keys\n\t  else {\n\t    for (var key in obj) {\n\t      if (obj.hasOwnProperty(key)) {\n\t        fn.call(null, obj[key], key, obj);\n\t      }\n\t    }\n\t  }\n\t}\n\t\n\t/**\n\t * Accepts varargs expecting each argument to be an object, then\n\t * immutably merges the properties of each object and returns result.\n\t *\n\t * When multiple objects contain the same key the later object in\n\t * the arguments list will take precedence.\n\t *\n\t * Example:\n\t *\n\t * ```js\n\t * var result = merge({foo: 123}, {foo: 456});\n\t * console.log(result.foo); // outputs 456\n\t * ```\n\t *\n\t * @param {Object} obj1 Object to merge\n\t * @returns {Object} Result of all merge properties\n\t */\n\tfunction merge(/*obj1, obj2, obj3, ...*/) {\n\t  var result = {};\n\t  forEach(arguments, function (obj) {\n\t    forEach(obj, function (val, key) {\n\t      result[key] = val;\n\t    });\n\t  });\n\t  return result;\n\t}\n\t\n\tmodule.exports = {\n\t  isArray: isArray,\n\t  isArrayBuffer: isArrayBuffer,\n\t  isFormData: isFormData,\n\t  isArrayBufferView: isArrayBufferView,\n\t  isString: isString,\n\t  isNumber: isNumber,\n\t  isObject: isObject,\n\t  isUndefined: isUndefined,\n\t  isDate: isDate,\n\t  isFile: isFile,\n\t  isBlob: isBlob,\n\t  isStandardBrowserEnv: isStandardBrowserEnv,\n\t  forEach: forEach,\n\t  merge: merge,\n\t  trim: trim\n\t};\n\n\n/***/ },\n/* 4 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t/* WEBPACK VAR INJECTION */(function(process) {'use strict';\n\t\n\t/**\n\t * Dispatch a request to the server using whichever adapter\n\t * is supported by the current environment.\n\t *\n\t * @param {object} config The config that is to be used for the request\n\t * @returns {Promise} The Promise to be fulfilled\n\t */\n\tmodule.exports = function dispatchRequest(config) {\n\t  return new Promise(function (resolve, reject) {\n\t    try {\n\t      // For browsers use XHR adapter\n\t      if ((typeof XMLHttpRequest !== 'undefined') || (typeof ActiveXObject !== 'undefined')) {\n\t        __webpack_require__(6)(resolve, reject, config);\n\t      }\n\t      // For node use HTTP adapter\n\t      else if (typeof process !== 'undefined') {\n\t        __webpack_require__(6)(resolve, reject, config);\n\t      }\n\t    } catch (e) {\n\t      reject(e);\n\t    }\n\t  });\n\t};\n\t\n\t\n\t/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(5)))\n\n/***/ },\n/* 5 */\n/***/ function(module, exports) {\n\n\t// shim for using process in browser\n\t\n\tvar process = module.exports = {};\n\tvar queue = [];\n\tvar draining = false;\n\tvar currentQueue;\n\tvar queueIndex = -1;\n\t\n\tfunction cleanUpNextTick() {\n\t    draining = false;\n\t    if (currentQueue.length) {\n\t        queue = currentQueue.concat(queue);\n\t    } else {\n\t        queueIndex = -1;\n\t    }\n\t    if (queue.length) {\n\t        drainQueue();\n\t    }\n\t}\n\t\n\tfunction drainQueue() {\n\t    if (draining) {\n\t        return;\n\t    }\n\t    var timeout = setTimeout(cleanUpNextTick);\n\t    draining = true;\n\t\n\t    var len = queue.length;\n\t    while(len) {\n\t        currentQueue = queue;\n\t        queue = [];\n\t        while (++queueIndex < len) {\n\t            if (currentQueue) {\n\t                currentQueue[queueIndex].run();\n\t            }\n\t        }\n\t        queueIndex = -1;\n\t        len = queue.length;\n\t    }\n\t    currentQueue = null;\n\t    draining = false;\n\t    clearTimeout(timeout);\n\t}\n\t\n\tprocess.nextTick = function (fun) {\n\t    var args = new Array(arguments.length - 1);\n\t    if (arguments.length > 1) {\n\t        for (var i = 1; i < arguments.length; i++) {\n\t            args[i - 1] = arguments[i];\n\t        }\n\t    }\n\t    queue.push(new Item(fun, args));\n\t    if (queue.length === 1 && !draining) {\n\t        setTimeout(drainQueue, 0);\n\t    }\n\t};\n\t\n\t// v8 likes predictible objects\n\tfunction Item(fun, array) {\n\t    this.fun = fun;\n\t    this.array = array;\n\t}\n\tItem.prototype.run = function () {\n\t    this.fun.apply(null, this.array);\n\t};\n\tprocess.title = 'browser';\n\tprocess.browser = true;\n\tprocess.env = {};\n\tprocess.argv = [];\n\tprocess.version = ''; // empty string to avoid regexp issues\n\tprocess.versions = {};\n\t\n\tfunction noop() {}\n\t\n\tprocess.on = noop;\n\tprocess.addListener = noop;\n\tprocess.once = noop;\n\tprocess.off = noop;\n\tprocess.removeListener = noop;\n\tprocess.removeAllListeners = noop;\n\tprocess.emit = noop;\n\t\n\tprocess.binding = function (name) {\n\t    throw new Error('process.binding is not supported');\n\t};\n\t\n\tprocess.cwd = function () { return '/' };\n\tprocess.chdir = function (dir) {\n\t    throw new Error('process.chdir is not supported');\n\t};\n\tprocess.umask = function() { return 0; };\n\n\n/***/ },\n/* 6 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\t/*global ActiveXObject:true*/\n\t\n\tvar defaults = __webpack_require__(2);\n\tvar utils = __webpack_require__(3);\n\tvar buildUrl = __webpack_require__(7);\n\tvar parseHeaders = __webpack_require__(8);\n\tvar transformData = __webpack_require__(9);\n\t\n\tmodule.exports = function xhrAdapter(resolve, reject, config) {\n\t  // Transform request data\n\t  var data = transformData(\n\t    config.data,\n\t    config.headers,\n\t    config.transformRequest\n\t  );\n\t\n\t  // Merge headers\n\t  var requestHeaders = utils.merge(\n\t    defaults.headers.common,\n\t    defaults.headers[config.method] || {},\n\t    config.headers || {}\n\t  );\n\t\n\t  if (utils.isFormData(data)) {\n\t    // Content-Type needs to be sent in all requests so the mapping template can be applied\n\t    //delete requestHeaders['Content-Type']; // Let the browser set it\n\t  }\n\t\n\t  // Create the request\n\t  var request = new (XMLHttpRequest || ActiveXObject)('Microsoft.XMLHTTP');\n\t  request.open(config.method.toUpperCase(), buildUrl(config.url, config.params), true);\n\t\n\t  // Set the request timeout in MS\n\t  request.timeout = config.timeout;\n\t\n\t  // Listen for ready state\n\t  request.onreadystatechange = function () {\n\t    if (request && request.readyState === 4) {\n\t      // Prepare the response\n\t      var responseHeaders = parseHeaders(request.getAllResponseHeaders());\n\t      var responseData = ['text', ''].indexOf(config.responseType || '') !== -1 ? request.responseText : request.response;\n\t      var response = {\n\t        data: transformData(\n\t          responseData,\n\t          responseHeaders,\n\t          config.transformResponse\n\t        ),\n\t        status: request.status,\n\t        statusText: request.statusText,\n\t        headers: responseHeaders,\n\t        config: config\n\t      };\n\t\n\t      // Resolve or reject the Promise based on the status\n\t      (request.status >= 200 && request.status < 300 ?\n\t        resolve :\n\t        reject)(response);\n\t\n\t      // Clean up request\n\t      request = null;\n\t    }\n\t  };\n\t\n\t  // Add xsrf header\n\t  // This is only done if running in a standard browser environment.\n\t  // Specifically not if we're in a web worker, or react-native.\n\t  if (utils.isStandardBrowserEnv()) {\n\t    var cookies = __webpack_require__(10);\n\t    var urlIsSameOrigin = __webpack_require__(11);\n\t\n\t    // Add xsrf header\n\t    var xsrfValue = urlIsSameOrigin(config.url) ?\n\t        cookies.read(config.xsrfCookieName || defaults.xsrfCookieName) :\n\t        undefined;\n\t\n\t    if (xsrfValue) {\n\t      requestHeaders[config.xsrfHeaderName || defaults.xsrfHeaderName] = xsrfValue;\n\t    }\n\t  }\n\t\n\t  // Add headers to the request\n\t  utils.forEach(requestHeaders, function (val, key) {\n\t    // Remove Content-Type if data is undefined\n\t    if (!data && key.toLowerCase() === 'content-type') {\n\t      delete requestHeaders[key];\n\t    }\n\t    // Otherwise add header to the request\n\t    else {\n\t      request.setRequestHeader(key, val);\n\t    }\n\t  });\n\t\n\t  // Add withCredentials to request if needed\n\t  if (config.withCredentials) {\n\t    request.withCredentials = true;\n\t  }\n\t\n\t  // Add responseType to request if needed\n\t  if (config.responseType) {\n\t    try {\n\t      request.responseType = config.responseType;\n\t    } catch (e) {\n\t      if (request.responseType !== 'json') {\n\t        throw e;\n\t      }\n\t    }\n\t  }\n\t\n\t  if (utils.isArrayBuffer(data)) {\n\t    data = new DataView(data);\n\t  }\n\t\n\t  // Send the request\n\t  request.send(data);\n\t};\n\n\n/***/ },\n/* 7 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tvar utils = __webpack_require__(3);\n\t\n\tfunction encode(val) {\n\t  return encodeURIComponent(val).\n\t    replace(/%40/gi, '@').\n\t    replace(/%3A/gi, ':').\n\t    replace(/%24/g, '$').\n\t    replace(/%2C/gi, ',').\n\t    replace(/%20/g, '+').\n\t    replace(/%5B/gi, '[').\n\t    replace(/%5D/gi, ']');\n\t}\n\t\n\t/**\n\t * Build a URL by appending params to the end\n\t *\n\t * @param {string} url The base of the url (e.g., http://www.google.com)\n\t * @param {object} [params] The params to be appended\n\t * @returns {string} The formatted url\n\t */\n\tmodule.exports = function buildUrl(url, params) {\n\t  if (!params) {\n\t    return url;\n\t  }\n\t\n\t  var parts = [];\n\t\n\t  utils.forEach(params, function (val, key) {\n\t    if (val === null || typeof val === 'undefined') {\n\t      return;\n\t    }\n\t\n\t    if (utils.isArray(val)) {\n\t      key = key + '[]';\n\t    }\n\t\n\t    if (!utils.isArray(val)) {\n\t      val = [val];\n\t    }\n\t\n\t    utils.forEach(val, function (v) {\n\t      if (utils.isDate(v)) {\n\t        v = v.toISOString();\n\t      }\n\t      else if (utils.isObject(v)) {\n\t        v = JSON.stringify(v);\n\t      }\n\t      parts.push(encode(key) + '=' + encode(v));\n\t    });\n\t  });\n\t\n\t  if (parts.length > 0) {\n\t    url += (url.indexOf('?') === -1 ? '?' : '&') + parts.join('&');\n\t  }\n\t\n\t  return url;\n\t};\n\n\n/***/ },\n/* 8 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tvar utils = __webpack_require__(3);\n\t\n\t/**\n\t * Parse headers into an object\n\t *\n\t * ```\n\t * Date: Wed, 27 Aug 2014 08:58:49 GMT\n\t * Content-Type: application/json\n\t * Connection: keep-alive\n\t * Transfer-Encoding: chunked\n\t * ```\n\t *\n\t * @param {String} headers Headers needing to be parsed\n\t * @returns {Object} Headers parsed into an object\n\t */\n\tmodule.exports = function parseHeaders(headers) {\n\t  var parsed = {}, key, val, i;\n\t\n\t  if (!headers) { return parsed; }\n\t\n\t  utils.forEach(headers.split('\\n'), function(line) {\n\t    i = line.indexOf(':');\n\t    key = utils.trim(line.substr(0, i)).toLowerCase();\n\t    val = utils.trim(line.substr(i + 1));\n\t\n\t    if (key) {\n\t      parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n\t    }\n\t  });\n\t\n\t  return parsed;\n\t};\n\n\n/***/ },\n/* 9 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tvar utils = __webpack_require__(3);\n\t\n\t/**\n\t * Transform the data for a request or a response\n\t *\n\t * @param {Object|String} data The data to be transformed\n\t * @param {Array} headers The headers for the request or response\n\t * @param {Array|Function} fns A single function or Array of functions\n\t * @returns {*} The resulting transformed data\n\t */\n\tmodule.exports = function transformData(data, headers, fns) {\n\t  utils.forEach(fns, function (fn) {\n\t    data = fn(data, headers);\n\t  });\n\t\n\t  return data;\n\t};\n\n\n/***/ },\n/* 10 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\t/**\n\t * WARNING:\n\t *  This file makes references to objects that aren't safe in all environments.\n\t *  Please see lib/utils.isStandardBrowserEnv before including this file.\n\t */\n\t\n\tvar utils = __webpack_require__(3);\n\t\n\tmodule.exports = {\n\t  write: function write(name, value, expires, path, domain, secure) {\n\t    var cookie = [];\n\t    cookie.push(name + '=' + encodeURIComponent(value));\n\t\n\t    if (utils.isNumber(expires)) {\n\t      cookie.push('expires=' + new Date(expires).toGMTString());\n\t    }\n\t\n\t    if (utils.isString(path)) {\n\t      cookie.push('path=' + path);\n\t    }\n\t\n\t    if (utils.isString(domain)) {\n\t      cookie.push('domain=' + domain);\n\t    }\n\t\n\t    if (secure === true) {\n\t      cookie.push('secure');\n\t    }\n\t\n\t    document.cookie = cookie.join('; ');\n\t  },\n\t\n\t  read: function read(name) {\n\t    var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n\t    return (match ? decodeURIComponent(match[3]) : null);\n\t  },\n\t\n\t  remove: function remove(name) {\n\t    this.write(name, '', Date.now() - 86400000);\n\t  }\n\t};\n\n\n/***/ },\n/* 11 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\t/**\n\t * WARNING:\n\t *  This file makes references to objects that aren't safe in all environments.\n\t *  Please see lib/utils.isStandardBrowserEnv before including this file.\n\t */\n\t\n\tvar utils = __webpack_require__(3);\n\tvar msie = /(msie|trident)/i.test(navigator.userAgent);\n\tvar urlParsingNode = document.createElement('a');\n\tvar originUrl;\n\t\n\t/**\n\t * Parse a URL to discover it's components\n\t *\n\t * @param {String} url The URL to be parsed\n\t * @returns {Object}\n\t */\n\tfunction urlResolve(url) {\n\t  var href = url;\n\t\n\t  if (msie) {\n\t    // IE needs attribute set twice to normalize properties\n\t    urlParsingNode.setAttribute('href', href);\n\t    href = urlParsingNode.href;\n\t  }\n\t\n\t  urlParsingNode.setAttribute('href', href);\n\t\n\t  // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n\t  return {\n\t    href: urlParsingNode.href,\n\t    protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n\t    host: urlParsingNode.host,\n\t    search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n\t    hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n\t    hostname: urlParsingNode.hostname,\n\t    port: urlParsingNode.port,\n\t    pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n\t              urlParsingNode.pathname :\n\t              '/' + urlParsingNode.pathname\n\t  };\n\t}\n\t\n\toriginUrl = urlResolve(window.location.href);\n\t\n\t/**\n\t * Determine if a URL shares the same origin as the current location\n\t *\n\t * @param {String} requestUrl The URL to test\n\t * @returns {boolean} True if URL shares the same origin, otherwise false\n\t */\n\tmodule.exports = function urlIsSameOrigin(requestUrl) {\n\t  var parsed = (utils.isString(requestUrl)) ? urlResolve(requestUrl) : requestUrl;\n\t  return (parsed.protocol === originUrl.protocol &&\n\t        parsed.host === originUrl.host);\n\t};\n\n\n/***/ },\n/* 12 */\n/***/ function(module, exports, __webpack_require__) {\n\n\t'use strict';\n\t\n\tvar utils = __webpack_require__(3);\n\t\n\tfunction InterceptorManager() {\n\t  this.handlers = [];\n\t}\n\t\n\t/**\n\t * Add a new interceptor to the stack\n\t *\n\t * @param {Function} fulfilled The function to handle `then` for a `Promise`\n\t * @param {Function} rejected The function to handle `reject` for a `Promise`\n\t *\n\t * @return {Number} An ID used to remove interceptor later\n\t */\n\tInterceptorManager.prototype.use = function (fulfilled, rejected) {\n\t  this.handlers.push({\n\t    fulfilled: fulfilled,\n\t    rejected: rejected\n\t  });\n\t  return this.handlers.length - 1;\n\t};\n\t\n\t/**\n\t * Remove an interceptor from the stack\n\t *\n\t * @param {Number} id The ID that was returned by `use`\n\t */\n\tInterceptorManager.prototype.eject = function (id) {\n\t  if (this.handlers[id]) {\n\t    this.handlers[id] = null;\n\t  }\n\t};\n\t\n\t/**\n\t * Iterate over all the registered interceptors\n\t *\n\t * This method is particularly useful for skipping over any\n\t * interceptors that may have become `null` calling `remove`.\n\t *\n\t * @param {Function} fn The function to call for each interceptor\n\t */\n\tInterceptorManager.prototype.forEach = function (fn) {\n\t  utils.forEach(this.handlers, function (h) {\n\t    if (h !== null) {\n\t      fn(h);\n\t    }\n\t  });\n\t};\n\t\n\tmodule.exports = InterceptorManager;\n\n\n/***/ },\n/* 13 */\n/***/ function(module, exports) {\n\n\t'use strict';\n\t\n\t/**\n\t * Syntactic sugar for invoking a function and expanding an array for arguments.\n\t *\n\t * Common use case would be to use `Function.prototype.apply`.\n\t *\n\t *  ```js\n\t *  function f(x, y, z) {}\n\t *  var args = [1, 2, 3];\n\t *  f.apply(null, args);\n\t *  ```\n\t *\n\t * With `spread` this example can be re-written.\n\t *\n\t *  ```js\n\t *  spread(function(x, y, z) {})([1, 2, 3]);\n\t *  ```\n\t *\n\t * @param {Function} callback\n\t * @returns {Function}\n\t */\n\tmodule.exports = function spread(callback) {\n\t  return function (arr) {\n\t    return callback.apply(null, arr);\n\t  };\n\t};\n\n\n/***/ }\n/******/ ])\n});\n;\n//# sourceMappingURL=axios.map"
  },
  {
    "path": "S3WebApp/S3/lib/url-template/url-template.js",
    "content": "/*\n UriTemplates Template Processor - Version: @VERSION - Dated: @DATE\n (c) marc.portier@gmail.com - 2011-2012\n Licensed under APLv2 (http://opensource.org/licenses/Apache-2.0)\n */\n\n;\nvar uritemplate = (function() {\n\n// Below are the functions we originally used from jQuery.\n// The implementations below are often more naive then what is inside jquery, but they suffice for our needs.\n\n    function isFunction(fn) {\n        return typeof fn == 'function';\n    }\n\n    function isEmptyObject (obj) {\n        for(var name in obj){\n            return false;\n        }\n        return true;\n    }\n\n    function extend(base, newprops) {\n        for (var name in newprops) {\n            base[name] = newprops[name];\n        }\n        return base;\n    }\n\n    /**\n     * Create a runtime cache around retrieved values from the context.\n     * This allows for dynamic (function) results to be kept the same for multiple\n     * occuring expansions within one template.\n     * Note: Uses key-value tupples to be able to cache null values as well.\n     */\n        //TODO move this into prep-processing\n    function CachingContext(context) {\n        this.raw = context;\n        this.cache = {};\n    }\n    CachingContext.prototype.get = function(key) {\n        var val = this.lookupRaw(key);\n        var result = val;\n\n        if (isFunction(val)) { // check function-result-cache\n            var tupple = this.cache[key];\n            if (tupple !== null && tupple !== undefined) {\n                result = tupple.val;\n            } else {\n                result = val(this.raw);\n                this.cache[key] = {key: key, val: result};\n                // NOTE: by storing tupples we make sure a null return is validly consistent too in expansions\n            }\n        }\n        return result;\n    };\n\n    CachingContext.prototype.lookupRaw = function(key) {\n        return CachingContext.lookup(this, this.raw, key);\n    };\n\n    CachingContext.lookup = function(me, context, key) {\n        var result = context[key];\n        if (result !== undefined) {\n            return result;\n        } else {\n            var keyparts = key.split('.');\n            var i = 0, keysplits = keyparts.length - 1;\n            for (i = 0; i<keysplits; i++) {\n                var leadKey = keyparts.slice(0, keysplits - i).join('.');\n                var trailKey = keyparts.slice(-i-1).join('.');\n                var leadContext = context[leadKey];\n                if (leadContext !== undefined) {\n                    return CachingContext.lookup(me, leadContext, trailKey);\n                }\n            }\n            return undefined;\n        }\n    };\n\n\n    function UriTemplate(set) {\n        this.set = set;\n    }\n\n    UriTemplate.prototype.expand = function(context) {\n        var cache = new CachingContext(context);\n        var res = \"\";\n        var i = 0, cnt = this.set.length;\n        for (i = 0; i<cnt; i++ ) {\n            res += this.set[i].expand(cache);\n        }\n        return res;\n    };\n\n//TODO: change since draft-0.6 about characters in literals\n    /* extract:\n     The characters outside of expressions in a URI Template string are intended to be copied literally to the URI-reference if the character is allowed in a URI (reserved / unreserved / pct-encoded) or, if not allowed, copied to the URI-reference in its UTF-8 pct-encoded form.\n     */\n    function Literal(txt ) {\n        this.txt = txt;\n    }\n\n    Literal.prototype.expand = function() {\n        return this.txt;\n    };\n\n\n\n    var RESERVEDCHARS_RE = new RegExp(\"[:/?#\\\\[\\\\]@!$&()*+,;=']\",\"g\");\n    function encodeNormal(val) {\n        return encodeURIComponent(val).replace(RESERVEDCHARS_RE, function(s) {return escape(s);} );\n    }\n\n//var SELECTEDCHARS_RE = new RegExp(\"[]\",\"g\");\n    function encodeReserved(val) {\n        //return encodeURI(val).replace(SELECTEDCHARS_RE, function(s) {return escape(s)} );\n        return encodeURI(val); // no need for additional replace if selected-chars is empty\n    }\n\n\n    function addUnNamed(name, key, val) {\n        return key + (key.length > 0 ? \"=\" : \"\") + val;\n    }\n\n    function addNamed(name, key, val, noName) {\n        noName = noName || false;\n        if (noName) { name = \"\"; }\n\n        if (!key || key.length === 0)  {\n            key = name;\n        }\n        return key + (key.length > 0 ? \"=\" : \"\") + val;\n    }\n\n    function addLabeled(name, key, val, noName) {\n        noName = noName || false;\n        if (noName) { name = \"\"; }\n\n        if (!key || key.length === 0)  {\n            key = name;\n        }\n        return key + (key.length > 0 && val ? \"=\" : \"\") + val;\n    }\n\n\n    var simpleConf = {\n        prefix : \"\",     joiner : \",\",     encode : encodeNormal,    builder : addUnNamed\n    };\n    var reservedConf = {\n        prefix : \"\",     joiner : \",\",     encode : encodeReserved,  builder : addUnNamed\n    };\n    var fragmentConf = {\n        prefix : \"#\",    joiner : \",\",     encode : encodeReserved,  builder : addUnNamed\n    };\n    var pathParamConf = {\n        prefix : \";\",    joiner : \";\",     encode : encodeNormal,    builder : addLabeled\n    };\n    var formParamConf = {\n        prefix : \"?\",    joiner : \"&\",     encode : encodeNormal,    builder : addNamed\n    };\n    var formContinueConf = {\n        prefix : \"&\",    joiner : \"&\",     encode : encodeNormal,    builder : addNamed\n    };\n    var pathHierarchyConf = {\n        prefix : \"/\",    joiner : \"/\",     encode : encodeNormal,    builder : addUnNamed\n    };\n    var labelConf = {\n        prefix : \".\",    joiner : \".\",     encode : encodeNormal,    builder : addUnNamed\n    };\n\n\n    function Expression(conf, vars ) {\n        extend(this, conf);\n        this.vars = vars;\n    }\n\n    Expression.build = function(ops, vars) {\n        var conf;\n        switch(ops) {\n            case ''  : conf = simpleConf; break;\n            case '+' : conf = reservedConf; break;\n            case '#' : conf = fragmentConf; break;\n            case ';' : conf = pathParamConf; break;\n            case '?' : conf = formParamConf; break;\n            case '&' : conf = formContinueConf; break;\n            case '/' : conf = pathHierarchyConf; break;\n            case '.' : conf = labelConf; break;\n            default  : throw \"Unexpected operator: '\"+ops+\"'\";\n        }\n        return new Expression(conf, vars);\n    };\n\n    Expression.prototype.expand = function(context) {\n        var joiner = this.prefix;\n        var nextjoiner = this.joiner;\n        var buildSegment = this.builder;\n        var res = \"\";\n        var i = 0, cnt = this.vars.length;\n\n        for (i = 0 ; i< cnt; i++) {\n            var varspec = this.vars[i];\n            varspec.addValues(context, this.encode, function(key, val, noName) {\n                var segm = buildSegment(varspec.name, key, val, noName);\n                if (segm !== null && segm !== undefined) {\n                    res += joiner + segm;\n                    joiner = nextjoiner;\n                }\n            });\n        }\n        return res;\n    };\n\n\n\n    var UNBOUND = {};\n\n    /**\n     * Helper class to help grow a string of (possibly encoded) parts until limit is reached\n     */\n    function Buffer(limit) {\n        this.str = \"\";\n        if (limit === UNBOUND) {\n            this.appender = Buffer.UnboundAppend;\n        } else {\n            this.len = 0;\n            this.limit = limit;\n            this.appender = Buffer.BoundAppend;\n        }\n    }\n\n    Buffer.prototype.append = function(part, encoder) {\n        return this.appender(this, part, encoder);\n    };\n\n    Buffer.UnboundAppend = function(me, part, encoder) {\n        part = encoder ? encoder(part) : part;\n        me.str += part;\n        return me;\n    };\n\n    Buffer.BoundAppend = function(me, part, encoder) {\n        part = part.substring(0, me.limit - me.len);\n        me.len += part.length;\n\n        part = encoder ? encoder(part) : part;\n        me.str += part;\n        return me;\n    };\n\n\n    function arrayToString(arr, encoder, maxLength) {\n        var buffer = new Buffer(maxLength);\n        var joiner = \"\";\n\n        var i = 0, cnt = arr.length;\n        for (i=0; i<cnt; i++) {\n            if (arr[i] !== null && arr[i] !== undefined) {\n                buffer.append(joiner).append(arr[i], encoder);\n                joiner = \",\";\n            }\n        }\n        return buffer.str;\n    }\n\n    function objectToString(obj, encoder, maxLength) {\n        var buffer = new Buffer(maxLength);\n        var joiner = \"\";\n        var k;\n\n        for (k in obj) {\n            if (obj.hasOwnProperty(k) ) {\n                if (obj[k] !== null && obj[k] !== undefined) {\n                    buffer.append(joiner + k + ',').append(obj[k], encoder);\n                    joiner = \",\";\n                }\n            }\n        }\n        return buffer.str;\n    }\n\n\n    function simpleValueHandler(me, val, valprops, encoder, adder) {\n        var result;\n\n        if (valprops.isArr) {\n            result = arrayToString(val, encoder, me.maxLength);\n        } else if (valprops.isObj) {\n            result = objectToString(val, encoder, me.maxLength);\n        } else {\n            var buffer = new Buffer(me.maxLength);\n            result = buffer.append(val, encoder).str;\n        }\n\n        adder(\"\", result);\n    }\n\n    function explodeValueHandler(me, val, valprops, encoder, adder) {\n        if (valprops.isArr) {\n            var i = 0, cnt = val.length;\n            for (i = 0; i<cnt; i++) {\n                adder(\"\", encoder(val[i]) );\n            }\n        } else if (valprops.isObj) {\n            var k;\n            for (k in val) {\n                if (val.hasOwnProperty(k)) {\n                    adder(k, encoder(val[k]) );\n                }\n            }\n        } else { // explode-requested, but single value\n            adder(\"\", encoder(val));\n        }\n    }\n\n    function valueProperties(val) {\n        var isArr = false;\n        var isObj = false;\n        var isUndef = true;  //note: \"\" is empty but not undef\n\n        if (val !== null && val !== undefined) {\n            isArr = (val.constructor === Array);\n            isObj = (val.constructor === Object);\n            isUndef = (isArr && val.length === 0) || (isObj && isEmptyObject(val));\n        }\n\n        return {isArr: isArr, isObj: isObj, isUndef: isUndef};\n    }\n\n\n    function VarSpec (name, vhfn, nums) {\n        this.name = unescape(name);\n        this.valueHandler = vhfn;\n        this.maxLength = nums;\n    }\n\n\n    VarSpec.build = function(name, expl, part, nums) {\n        var valueHandler, valueModifier;\n\n        if (!!expl) { //interprete as boolean\n            valueHandler = explodeValueHandler;\n        } else {\n            valueHandler = simpleValueHandler;\n        }\n\n        if (!part) {\n            nums = UNBOUND;\n        }\n\n        return new VarSpec(name, valueHandler, nums);\n    };\n\n\n    VarSpec.prototype.addValues = function(context, encoder, adder) {\n        var val = context.get(this.name);\n        var valprops = valueProperties(val);\n        if (valprops.isUndef) { return; } // ignore empty values\n        this.valueHandler(this, val, valprops, encoder, adder);\n    };\n\n\n\n//----------------------------------------------parsing logic\n// How each varspec should look like\n    var VARSPEC_RE=/([^*:]*)((\\*)|(:)([0-9]+))?/;\n\n    var match2varspec = function(m) {\n        var name = m[1];\n        var expl = m[3];\n        var part = m[4];\n        var nums = parseInt(m[5], 10);\n\n        return VarSpec.build(name, expl, part, nums);\n    };\n\n\n// Splitting varspecs in list with:\n    var LISTSEP=\",\";\n\n// How each template should look like\n    var TEMPL_RE=/(\\{([+#.;?&\\/])?(([^.*:,{}|@!=$()][^*:,{}$()]*)(\\*|:([0-9]+))?(,([^.*:,{}][^*:,{}]*)(\\*|:([0-9]+))?)*)\\})/g;\n// Note: reserved operators: |!@ are left out of the regexp in order to make those templates degrade into literals\n// (as expected by the spec - see tests.html \"reserved operators\")\n\n\n    var match2expression = function(m) {\n        var expr = m[0];\n        var ops = m[2] || '';\n        var vars = m[3].split(LISTSEP);\n        var i = 0, len = vars.length;\n        for (i = 0; i<len; i++) {\n            var match;\n            if ( (match = vars[i].match(VARSPEC_RE)) === null) {\n                throw \"unexpected parse error in varspec: \" + vars[i];\n            }\n            vars[i] = match2varspec(match);\n        }\n\n        return Expression.build(ops, vars);\n    };\n\n\n    var pushLiteralSubstr = function(set, src, from, to) {\n        if (from < to) {\n            var literal = src.substr(from, to - from);\n            set.push(new Literal(literal));\n        }\n    };\n\n    var parse = function(str) {\n        var lastpos = 0;\n        var comp = [];\n\n        var match;\n        var pattern = TEMPL_RE;\n        pattern.lastIndex = 0; // just to be sure\n        while ((match = pattern.exec(str)) !== null) {\n            var newpos = match.index;\n            pushLiteralSubstr(comp, str, lastpos, newpos);\n\n            comp.push(match2expression(match));\n            lastpos = pattern.lastIndex;\n        }\n        pushLiteralSubstr(comp, str, lastpos, str.length);\n\n        return new UriTemplate(comp);\n    };\n\n\n//-------------------------------------------comments and ideas\n\n//TODO: consider building cache of previously parsed uris or even parsed expressions?\n\n    return parse;\n\n}());\n"
  },
  {
    "path": "S3WebApp/S3/modules/chat/chat.html",
    "content": "<header class=\"clearfix\" style=\"background-color:#000;\">\n    <div id=\"square\"></div>\n    <img id=\"zombie-logo\" src=\"assets/images/zombie-logo.png\"/img style=\"padding-left:3em; padding-right:1em;\">\n    <div id=\"main-header\"><img src=\"assets/images/title.png\"></div>\n    <img id=\"logo\" src=\"assets/images/aws-logo.png\"/img>\n</header>\n<section id=\"wrapper\" style=\"min-height:700px;\">\n    <!-- ***********************************************************\n\t   Panel and control (usernameSectionCtrl) for entering in username/logging in.\n     ***********************************************************  -->\n\n    <div id=\"username\">\n        <div id=\"screenNameDiv\">\n            <p>\n                <img src=\"assets/images/username.png\"/img>\n                <span style=\"font-size:18px;\">{{chatuser.name}}</span>\n            </p>\n            <p>\n                <input ng-click=\"toggleChatting()\" id=\"chat-toggle\" type=\"button\" value=\"{{chatState}}\" style=\"margin-left:10px; vertical-align: middle;\" />\n            </p>\n            <button class='btn btn-sm btn-danger pull-right' ng-click=\"signout()\">Sign Out</button>\n        </div>\n    </div>\n\n    <div class=\"panel-info-chatbox\">\n        <div ui-view=\"chatPanel\"></div>\n        <div ui-view=\"talkersPanel\"></div>\n        <div ui-view=\"chatMessages\"></div>\n    </div>\n\n</section>\n"
  },
  {
    "path": "S3WebApp/S3/modules/chat/chat.js",
    "content": "angular.module('chatApp.chat', ['chatApp.utils'])\n.controller('ChatCtrl', function($rootScope, $scope, $state, $_) {\n\n    $scope.chatState = \"Start Chatting\";\n    $rootScope.chatuser = {\n        name: \"\",\n        phone: \"\",\n        email: \"\"\n    };\n\n    var data = {\n        UserPoolId : USER_POOL_ID,\n        ClientId : CLIENT_ID\n    };\n    var userPool = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserPool(data);\n    var cognitoUser = userPool.getCurrentUser();\n\n    if (cognitoUser != null) {\n        cognitoUser.getSession(function(err, session) {\n            if (err) {\n                $scope.signout(); \n                return;\n            }\n            console.log('session validity: ' + session.isValid());\n            cognitoUser.getUserAttributes(function(err, result) {\n                if (err) {\n                    console.log(err);\n                    return;\n                }\n                var nm = $_.where(result, { Name: \"name\" });\n                if (nm.length > 0) {\n                    $rootScope.chatuser.name = nm[0].Value;\n                }\n\n                var ph = $_.where(result, { Name: \"phone_number\" });\n                if (ph.length > 0) {\n                    $rootScope.chatuser.phone = ph[0].Value;\n                }\n\n                var em = $_.where(result, { Name: \"email\" });\n                if (em.length > 0) {\n                    $rootScope.chatuser.email = em[0].Value;\n                }\n                $scope.$apply();\n\n            });\n        });\n    }\n\n\n    var login = function() {\n        $rootScope.chatting = true;\n        $rootScope.$emit('chatting');\n        $scope.chatState = \"Stop Chatting\";\n        \n    };\n\n    var logoff = function() {\n        $scope.chatState = \"Start Chatting\";\n        $rootScope.chatting = false;\n        $rootScope.$emit('not chatting');\n    };\n\n    $scope.toggleChatting = function() {\n        if($rootScope.chatting) {\n            logoff();\n        } else {\n            login();\n        }\n    };\n\n    $scope.signout = function() {\n        if (cognitoUser != null) {\n            console.log(\"logging user out\");\n            $scope.chatState = \"Start Chatting\";\n            $rootScope.chatting = false;\n            $rootScope.$emit('not chatting');\n            cognitoUser.signOut();\n            AWS.config.credentials.clearCachedId();\n            $state.go('signin', { });\n        }\n    };\n\n\n});\n"
  },
  {
    "path": "S3WebApp/S3/modules/chat/chatMessages.html",
    "content": "<div class=\"form panel-body\">\n      <div class=\"form-group\">\n        <input type=\"text\" ng-keypress=\"chatMessageKeyPressed($event)\" ng-model=\"chatMessage\" ng-disabled=\"!chatting || posting\" class=\"form-control\" id=\"chat-message-input\" placeholder=\"{{chatPlaceholder}}\">\n    </div>\n</div>\n"
  },
  {
    "path": "S3WebApp/S3/modules/chat/chatMessages.js",
    "content": "angular.module('chatApp.chatMessages', [])\n.controller('chatMessageCtrl', function($scope, $rootScope, $resource) {\n\n    $scope.chatPlaceholder = \"Save your brains, start chatting!\";\n    $scope.chatMessage = null;\n\n    $rootScope.$on(\"chatting\", function() {\n        $scope.chatPlaceholder = \"Enter a message and save humanity\";\n    });\n    $rootScope.$on(\"not chatting\", function() {\n        $scope.chatMessage = null;\n        $scope.chatPlaceholder = \"Save your brains, start chatting!\";\n    });\n\n    $scope.lastTalking = new Date;\n\n    $scope.chatMessageKeyPressed = function(keyEvent) {\n\n        var apigClient = apigClientFactory.newClient({\n            region: AWS_REGION, // OPTIONAL: The region where the API is deployed, by default this parameter is set to us-east-1\n            accessKey: AWS.config.credentials.accessKeyId,\n            secretKey: AWS.config.credentials.secretAccessKey, \n            sessionToken: AWS.config.credentials.sessionToken\n        });\n        \n        if (keyEvent.which === 13) {\n            $scope.posting = true;\n            console.log('Sending Message: ' + $scope.chatMessage);\n\n            var body = {\n                channel: 'default',\n                name: [$rootScope.chatuser.name, \" (\", $rootScope.chatuser.email, \")\"].join(\"\"),\n                message: $scope.chatMessage\n            };\n\n            var params = '';\n            var additionalParams = '';\n\n            apigClient.zombieMessagePost(params, body, additionalParams)\n                .then(function(result){\n                //This is where you would put a success callback\n                    console.log('Message sent to database');\n                    console.log ('user email is ' + $rootScope.chatuser.email);\n                    $scope.chatMessage = null;\n                    $scope.posting = false;\n                    $scope.chatPlaceholder = \"Enter a message and save humanity\";\n                }).catch( function(result){\n                    console.log('there was an error POSTing');\n                });\n\n\n        } else {\n            var diff = Date.now() - $scope.lastTalking;\n            console.log(diff);\n\n            // send talking update at max every .5 seconds\n            if (diff < 500) {\n                return;\n            }\n\n            var talkersBody = {\n                channel: 'default',\n                name: $rootScope.chatuser.name\n            };\n\n            var talkersParams = '';\n            var talkersAdditionalParams = '';\n\n            apigClient.zombieTalkersPost(talkersParams, talkersBody, talkersAdditionalParams)\n                .then(function(result){\n                    console.log('Posting to talkers.');\n                    $scope.lastTalking = new Date;\n                }).catch( function(result){\n                });\n        }\n    };\n\n});\n"
  },
  {
    "path": "S3WebApp/S3/modules/chat/chatPanel.html",
    "content": "<div class=\"panel-body\">\n    <div id=\"chat-body\">\n        <div id=\"message-items\" data-ng-repeat=\"message in messages\">\n            {{ message.name }} {{message.timestamp | date:'yyyy-MM-dd HH:mm:ss Z'}} - {{message.message}}<br/>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "S3WebApp/S3/modules/chat/chatPanel.js",
    "content": "angular.module('chatApp.chatPanel', ['chatApp.chatMessages'])\n.controller('chatPanelCtrl', function($scope, $rootScope, $resource, $timeout) {\n\n    $rootScope.$on(\"chatting\", function() {\n        var Messages = $resource(MESSAGES_ENDPOINT);\n\n        var poll = function()\n        {\n            $timeout(function() {\n                if($rootScope.chatting) \n                {\n                    console.log('Retrieving Messages from Server');\n\n                    var apigClient = apigClientFactory.newClient({\n                        region: AWS_REGION, // OPTIONAL: The region where the API is deployed, by default this parameter is set to us-east-1\n                        accessKey: AWS.config.credentials.accessKeyId,\n                        secretKey: AWS.config.credentials.secretAccessKey, \n                        sessionToken: AWS.config.credentials.sessionToken\n                    });\n\n                    var body = '';\n\n                    var params = '';\n                    var additionalParams = '';\n            \n\n                    apigClient.zombieMessageGet(params, body, additionalParams)\n                        .then(function(result){\n                            if($rootScope.chatting) {\n                                //console.log('result: ' + result.data.messages);\n                                $scope.messages = result.data.messages;\n                                \n                            } else {\n                                $scope.messages = null;\n                            }\n                        }).catch(function(result){\n                            console.log('error: ' + result);\n                        });\n                    \n                    poll();\n                }\n            }, 2000);\n        };\n        poll();\n    });\n\n    $rootScope.$on(\"not chatting\", function() {\n        //clear our model, which will clear out the messages from the panel\n        $scope.messages = null;\n    });\n\n});\n"
  },
  {
    "path": "S3WebApp/S3/modules/chat/talkersPanel.html",
    "content": "<div class=\"panel-body\">\n    <div id=\"talkers-body\">\n        Users Typing:<br/>\n        <div id=\"talkers-items\" data-ng-repeat=\"talker in talkers\">\n            {{ talker }}<br/>\n        </div>\n    </div>\n</div>\n"
  },
  {
    "path": "S3WebApp/S3/modules/chat/talkersPanel.js",
    "content": "angular.module('chatApp.talkersPanel', [])\n.controller('talkersPanelCtrl', function($scope, $rootScope, $resource, $timeout) {\n\n    $rootScope.$on(\"chatting\", function() {\n        var poll = function() {\n            $timeout(function() {\n                if($rootScope.chatting) {\n                    console.log('Retrieving Talkers from Server');\n                \n                    var apigClient = apigClientFactory.newClient({\n                        region: AWS_REGION, // OPTIONAL: The region where the API is deployed, by default this parameter is set to us-east-1\n                        accessKey: AWS.config.credentials.accessKeyId,\n                        secretKey: AWS.config.credentials.secretAccessKey, \n                        sessionToken: AWS.config.credentials.sessionToken\n                    });\n\n                    var body = '';\n\n                    var params = '';\n                    var additionalParams = '';\n            \n\n                    apigClient.zombieTalkersGet(params, body, additionalParams)\n                        .then(function(result){\n                            if($rootScope.chatting) {\n                                console.log('talkers are: ' + result.data.Talkers);\n                                $scope.talkers = result.data.Talkers;\n                                \n                            } else {\n                                $scope.talkers = null;\n                            }\n                        }).catch(function(error){\n                            console.log('error: ' + error.data);\n                        });\n                    \n                    poll();\n                }\n            }, 1000);\n        };\n        poll();\n    });\n    $rootScope.$on(\"not chatting\", function() {\n        //clear our model, which will clear out the messages from the panel\n     \t\t$scope.talkers = null;\n    });\n\n});\n"
  },
  {
    "path": "S3WebApp/S3/modules/confirm/confirm.html",
    "content": "<header class=\"clearfix\">\n    <div id=\"square\"></div>\n    <div id=\"main-header\"><img src=\"assets/images/title.png\"></div>\n    <img id=\"logo\" src=\"assets/images/aws-logo.png\"/img>\n</header>\n<section id=\"wrapper\" class=\"login-register\">\n    <div class=\"login-box\">\n        <div class=\"white-box\">\n            <form name=\"confirmForm\" class=\"form-horizontal m-t-20\" novalidate ng-submit=\"confirmAccount(confirmForm.$valid)\">\n                <div class=\"form-group \">\n                    <div class=\"col-xs-12\">\n                        <h3>Confirm your account</h3>\n                        <p class=\"text-muted\">Confirm your Zombie Apocalypse chat account.</p>\n                    </div>\n                </div>\n                <div class=\"form-group\" ng-show=\"errormessage\">\n                    <div class=\"col-xs-12 has-error\">\n                        <p class=\"help-block\">{{errormessage}}</p>\n                    </div>\n                </div>\n                <div class=\"form-group \" ng-class=\"{ 'has-error': confirmForm.email.$touched && confirmForm.email.$invalid }\">\n                    <div class=\"col-xs-12\">\n                        <input name=\"email\" class=\"form-control\" ng-model=\"user.email\" required placeholder=\"Email\" type=\"email\">\n                        <div class=\"help-block\" ng-messages=\"confirmForm.email.$error\" ng-if=\"confirmForm.email.$touched\">\n                            <p ng-message=\"required\">This field is required</p>\n                            <p ng-message=\"email\">This needs to be a valid email</p>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"form-group \" ng-class=\"{ 'has-error': confirmForm.confirmCode.$touched && confirmForm.confirmCode.$invalid }\">\n                    <div class=\"col-xs-12\">\n                        <input name=\"confirmCode\" class=\"form-control\" ng-model=\"user.confirmCode\" required placeholder=\"Confirmation Code\" type=\"text\">\n                        <div class=\"help-block\" ng-messages=\"confirmForm.confirmCode.$error\" ng-if=\"confirmForm.confirmCode.$touched\">\n                            <p ng-message=\"required\">This field is required</p>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"form-group text-center m-t-40\">\n                    <div class=\"col-xs-12\">\n                        <button class=\"btn btn-info btn-lg btn-block text-uppercase waves-effect waves-light\" type=\"submit\" ng-disabled=\"confirmForm.$invalid\">Confirm</button>\n                    </div>\n                </div>\n            </form>\n        </div>\n    </div>\n</section>\n"
  },
  {
    "path": "S3WebApp/S3/modules/confirm/confirm.js",
    "content": "angular.module('chatApp.confirm', [])\n.controller('ConfirmCtrl', function($scope, $state) {\n\n    $scope.errormessage = \"\";\n\n    $scope.user = {\n        email: \"\",\n        confirmCode: \"\"\n    };\n\n    $scope.confirmAccount = function(isValid) {\n        console.log($scope.user);\n        var _username = $scope.user.email;\n        if (isValid) {\n            console.log(\"Confirmation code \" + $scope.user.confirmCode);\n\n            var poolData = {\n                UserPoolId : USER_POOL_ID,\n                ClientId : CLIENT_ID\n            };\n\n            var userPool = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserPool(poolData);\n            var userData = {\n                Username : _username,\n                Pool : userPool\n            };\n\n            var cognitoUser = new AWSCognito.CognitoIdentityServiceProvider.CognitoUser(userData);\n            cognitoUser.confirmRegistration($scope.user.confirmCode, true, function(err, result) {\n                if (err) {\n                    console.log(err);\n                    $scope.errormessage = \"An unexpected error has occurred. Please try again. Error: \" + err;\n                    $scope.$apply();\n                    return;\n                }\n                console.log('call result: ' + result);\n                $state.go('signin', { });\n            });\n\n        } else {\n            $scope.errormessage = \"There are still invalid fields.\";\n            console.log(\"There are still invalid fields\");\n        }\n    };\n\n});\n"
  },
  {
    "path": "S3WebApp/S3/modules/index.html",
    "content": "<!DOCTYPE html>\n<html lang=\"en-US\">\n    <head>\n        <meta charset=\"UTF-8\">\n        <title>Zombie Chat Application</title>\n        <link rel=\"stylesheet\" href=\"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css\" integrity=\"sha384-1q8mTJOASx8j1Au+a5WDVnPi2lkFfwwEAa8hDDdjZlpLegxhjVME1fgjWPGmkzs7\" crossorigin=\"anonymous\">\n        <link rel=\"stylesheet\" href=\"assets/css/zombie.css\"type=\"text/css\" charset=\"utf-8\" />\n\n    </head>\n\n    <body ng-app=\"chatApp\">\n        <header>\n            <div id=\"square\"></div>\n            <img id=\"zombie-logo\" src=\"assets/images/zombie-logo.png\"/img style=\"padding-left:3em; padding-right:1em;\">\n            <div id=\"main-header\"><img src=\"assets/images/title.png\"></div>\n            <img id=\"logo\" src=\"assets/images/aws-logo.png\"/img>\n        </header>\n\n\n\n<div id=\"wrapper\">\n\n<!-- ***********************************************************\n\n\tPanel and control (usernameSectionCtrl) for entering in username/logging in.\n\n     ***********************************************************  -->\n\n    <div ng-controller=\"usernameSectionCtrl\" id=\"username\">\n        <div id=\"screenNameDiv\">\n              <p>\n                  <img src=\"assets/images/username.png\"/img>\n                  <input ng-disabled=\"chatting\" id=\"name-input\" type=\"text\" placeholder=\"Enter user name\">\n              </p>\n              <p>\n                   <input ng-click=\"toggleChatting()\" id=\"chat-toggle\"\n                          type=\"button\" value=\"Start Chatting\"/>\n              </p>\n        </div>\n    </div>\n\n    <div class=\"panel-info-chatbox\">\n\n      <!-- ***********************************************************\n\n      Panel and control (chatPanelCtrl) for displaying the chat messages.\n\n     ***********************************************************  -->\n\n        <div ng-controller=\"chatPanelCtrl\" class=\"panel-body\">\n            <div id=\"chat-body\">\n              <div id=\"message-items\" data-ng-repeat=\"message in messages\">\n                {{ message.name }} {{message.timestamp | date:'yyyy-MM-dd HH:mm:ss Z'}} - {{message.message}}<br/>\n              </div>\n            </div>\n          </div>\n\n      <!-- ***********************************************************\n\n      Panel and control (talkersPanelCtrl) for displaying the chat messages.\n\n     ***********************************************************  -->\n\n        <div ng-controller=\"talkersPanelCtrl\" class=\"panel-body\">\n            <div id=\"talkers-body\">\n              Users Typing:<br/>\n              <div id=\"talkers-items\" data-ng-repeat=\"talker in talkers\">\n                {{ talker }}<br/>\n              </div>\n            </div>\n          </div>\n\n    <!-- ***********************************************************\n\n      Panel and control (chatMessageCtrl) for displaying the chat messages.\n\n     ***********************************************************  -->\n        <div ng-controller=\"chatMessageCtrl\" class=\"form\">\n              <div class=\"form-group\">\n                <input type=\"text\" ng-keypress=\"chatMessageKeyPressed($event)\" ng-model=\"chatMessage\" ng-disabled=\"!chatting || posting\" class=\"form-control\" id=\"chat-message-input\"\n                placeholder=\"Save your brains, enter your user name\">\n            </div>\n        </div>\n\n    </div>\n    </div>\n\n    <script src=\"https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js\" integrity=\"sha384-0mSbJDEHialfmuBBQP6A4Qrprq5OVfW37PRR3j5ELqxss1yVqOtnepnHVP9aJ7xS\" crossorigin=\"anonymous\"></script>\n    <script src=\"https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular.min.js\"></script>\n    <script src=\"https://ajax.googleapis.com/ajax/libs/angularjs/1.5.6/angular-resource.js\"></script>\n\n    <!-- This is the file that contains the API gateway endpoint... -->\n    <script src=\"assets/js/constants.js\"></script>\n\n    <!-- Angularjs app and controllers -->\n    <script src=\"app/app.js\"></script>\n    <script src=\"app/controllers/loginController.js\"></script>\n    <script src=\"app/controllers/chatMessageController.js\"></script>\n    <script src=\"app/controllers/chatPanelController.js\"></script>\n    <script src=\"app/controllers/talkersPanelController.js\"></script>\n\n</body>\n</html>\n"
  },
  {
    "path": "S3WebApp/S3/modules/signin/signin.html",
    "content": "<header class=\"clearfix\">\n    <div id=\"square\"></div>\n    <div id=\"main-header\"><img src=\"assets/images/title.png\"></div>\n    <img id=\"logo\" src=\"assets/images/aws-logo.png\"/img>\n</header>\n<section id=\"wrapper\" class=\"login-signin\">\n    <div class=\"login-box\">\n        <div class=\"white-box\">\n            <form name=\"signinForm\" class=\"form-horizontal m-t-20\" novalidate ng-submit=\"signin(signinForm.$valid)\">\n                <div class=\"form-group \">\n                    <div class=\"col-xs-12\">\n                        <h3>Sign In</h3>\n                        <p class=\"text-muted\">Sign in to chat with your Zombie Apocalypse camp.</p>\n                    </div>\n                </div>\n                <div class=\"form-group\" ng-show=\"errormessage\">\n                    <div class=\"col-xs-12 has-error\">\n                        <p class=\"help-block\">{{errormessage}}</p>\n                    </div>\n                </div>\n                <div class=\"form-group \" ng-class=\"{ 'has-error': signinForm.email.$touched && signinForm.email.$invalid }\">\n                    <div class=\"col-xs-12\">\n                        <input name=\"email\" class=\"form-control\" ng-model=\"user.email\" required placeholder=\"Email\" type=\"email\">\n                        <div class=\"help-block\" ng-messages=\"signinForm.email.$error\" ng-if=\"signinForm.email.$touched\">\n                            <p ng-message=\"required\">This field is required</p>\n                            <p ng-message=\"email\">This needs to be a valid email</p>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"form-group \" ng-class=\"{ 'has-error': signinForm.password.$touched && signinForm.password.$invalid }\">\n                    <div class=\"col-xs-12\">\n                        <input name=\"password\" class=\"form-control\" ng-model=\"user.password\" required placeholder=\"Password\" type=\"password\">\n                        <div class=\"help-block\" ng-messages=\"signinForm.password.$error\" ng-if=\"signinForm.password.$touched\">\n                            <p ng-message=\"required\">This field is required</p>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"form-group text-center m-t-40\">\n                    <div class=\"col-xs-12\">\n                        <button class=\"btn btn-success btn-lg btn-block text-uppercase waves-effect waves-light\" type=\"submit\" ng-disabled=\"signinForm.$invalid\">Sign In</button>\n                    </div>\n                </div>\n                <div class=\"form-group m-t-30 m-b-0\">\n                    <div class=\"col-sm-12 text-center\">\n                        <p>Don't have an account?\n                            <a href=\"#/signup\" class=\"text-primary m-l-5\">\n                                <b>Sign Up</b>\n                            </a>\n                        </p>\n                    </div>\n                </div>\n            </form>\n        </div>\n    </div>\n</section>\n"
  },
  {
    "path": "S3WebApp/S3/modules/signin/signin.js",
    "content": "angular.module('chatApp.signin', ['chatApp.utils'])\n.controller('SigninCtrl', function($scope, $state, $localstorage) {\n\n    $scope.errormessage = \"\";\n\n    $scope.user = {\n        email: \"\",\n        password: \"\"\n    };\n\n    $scope.signin = function(isValid) {\n        //console.log($scope.user);\n        if (isValid) {\n\n            var authenticationData = {\n                Username : $scope.user.email,\n                Password : $scope.user.password,\n            };\n            var authenticationDetails = new AWSCognito.CognitoIdentityServiceProvider.AuthenticationDetails(authenticationData);\n            var poolData = {\n                UserPoolId : USER_POOL_ID,\n                ClientId : CLIENT_ID\n            };\n            var userPool = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserPool(poolData);\n            var userData = {\n                Username : $scope.user.email,\n                Pool : userPool\n            };\n            var cognitoUser = new AWSCognito.CognitoIdentityServiceProvider.CognitoUser(userData);\n            try {\n                cognitoUser.authenticateUser(authenticationDetails, {\n                    onSuccess: function (result) {\n                        console.log(result);\n                        console.log('access token + ' + result.getAccessToken().getJwtToken());\n                        console.log(cognitoUser);\n\n                        var login = 'cognito-idp.' + COGNITO_REGION + '.amazonaws.com/' + USER_POOL_ID;\n\n                        console.log('login string is: ' + login);\n                        \n                        AWS.config.credentials = new AWS.CognitoIdentityCredentials({\n                            IdentityPoolId : IDENTITY_POOL_ID, // your identity pool id here\n                            IdentityId: AWS.config.credentials.identityId\n                        });\n                        AWS.config.credentials.params.Logins = {};\n                        AWS.config.credentials.params.Logins[login] = result.getIdToken().getJwtToken();\n\n                        //console.log('aws config is: ' + AWS.config.credentials.params.Logins[login]);\n\n                        AWS.config.credentials.refresh(function (err) {\n                            // now using authenticated credentials\n                            if(err)\n                            {\n                              console.log('Error in authenticating to AWS '+ err);\n\n                              // Call error if we can't assume authenticated role.\n                              $scope.errormessage = \"Unable to sign in user. There was an error authenticating to identity provider.\";\n                              $scope.$apply();\n\n                            }\n                            else\n                            {\n                              console.log('identityId is: ' + AWS.config.credentials.identityId);\n                              var awstoken = {\n                                expireTime: AWS.config.credentials.expireTime,\n                                accessKeyId: AWS.config.credentials.accessKeyId,\n                                sessionToken: AWS.config.credentials.sessionToken,\n                                secretAccessKey: AWS.config.credentials.secretAccessKey\n                              };\n                              $localstorage.setObject('awstoken', awstoken);\n                              $state.go('chat', { }); // if all went well then log them in.\n\n                            }\n                        });\n                    },\n\n\n                    onFailure: function(err) {\n                        console.log(err);\n                        $scope.errormessage = \"Unable to sign in user. Please check your username and password.\";\n                        $scope.$apply();\n                    }\n\n                });\n            } catch(e) {\n                console.log(e);\n            }\n        } else {\n            $scope.errormessage = \"There are still invalid fields.\";\n            console.log(\"There are still invalid fields\");\n        }\n    };\n\n});\n"
  },
  {
    "path": "S3WebApp/S3/modules/signup/signup.html",
    "content": "<header class=\"clearfix\">\n    <div id=\"square\"></div>\n    <div id=\"main-header\"><img src=\"assets/images/title.png\"></div>\n    <img id=\"logo\" src=\"assets/images/aws-logo.png\"/img>\n</header>\n<section id=\"wrapper\" class=\"login-register\">\n    <div class=\"login-box\">\n        <div class=\"white-box\">\n            <form name=\"signupForm\" class=\"form-horizontal m-t-20\" novalidate ng-submit=\"register(signupForm.$valid)\">\n                <div class=\"form-group \">\n                    <div class=\"col-xs-12\">\n                        <h3>Sign Up</h3>\n                        <p class=\"text-muted\">Survive the apocalypse together!</p>\n                        <p class=\"text-muted\">Create a user account and communicate with other survivors on your team!</p>\n                    </div>\n                </div>\n                <div class=\"form-group\" ng-show=\"errormessage\">\n                    <div class=\"col-xs-12 has-error\">\n                        <p class=\"help-block\">{{errormessage}}</p>\n                    </div>\n                </div>\n                <div class=\"form-group \" ng-class=\"{ 'has-error': signupForm.name.$touched && signupForm.name.$invalid }\">\n                    <div class=\"col-xs-12\">\n                        <input name=\"name\" class=\"form-control\" ng-model=\"user.name\" required placeholder=\"Name\" type=\"text\">\n                        <div class=\"help-block\" ng-messages=\"signupForm.name.$error\" ng-if=\"signupForm.name.$touched\">\n                            <p ng-message=\"required\">This field is required</p>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"form-group \" ng-class=\"{ 'has-error': signupForm.email.$touched && signupForm.email.$invalid }\">\n                    <div class=\"col-xs-12\">\n                        <input name=\"email\" class=\"form-control\" ng-model=\"user.email\" required placeholder=\"Email\" type=\"email\">\n                        <div class=\"help-block\" ng-messages=\"signupForm.email.$error\" ng-if=\"signupForm.email.$touched\">\n                            <p ng-message=\"required\">This field is required</p>\n                            <p ng-message=\"email\">This needs to be a valid email</p>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"form-group \" ng-class=\"{ 'has-error': signupForm.phone.$touched && signupForm.phone.$invalid }\">\n                    <div class=\"col-xs-12\">\n                        <input name=\"phone\" class=\"form-control\" ng-model=\"user.phone\" required placeholder=\"Mobile Phone\" type=\"text\" ng-pattern=\"/^[1-9][0-9]{9}$/\">\n                        <div class=\"help-block\" ng-messages=\"signupForm.phone.$error\" ng-if=\"signupForm.phone.$touched\">\n                            <p ng-message=\"required\">This field is required</p>\n                            <p ng-message=\"pattern\">Digits only please. Must be a valid 10 digit phone number</p>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"form-group \" ng-class=\"{ 'has-error': signupForm.password.$touched && signupForm.password.$invalid }\">\n                    <div class=\"col-xs-12\">\n                        <input name=\"password\" class=\"form-control\" ng-model=\"user.password\" required placeholder=\"Password\" type=\"password\" ng-pattern=\"/^(?=.*\\d)(?=.*[\\^\\$\\*\\.\\[\\]\\{\\}\\(\\)\\?\\-\\“\\!\\@\\#\\%\\/\\,\\>\\<\\‘\\:\\;\\|\\_\\~\\`]).{8,99}$/\">\n                        <div class=\"help-block\" ng-messages=\"signupForm.password.$error\" ng-if=\"signupForm.password.$touched\">\n\n                            <p ng-message=\"required\">This field is required</p>\n                            <p ng-message=\"pattern\">Password must be at least 8 characters, and must include at least 1 upper case letter, 1 lower case letter, 1 numeric digit, and at least 1 special character.</p>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"form-group \" ng-class=\"{ 'has-error': signupForm.confirmPassword.$touched && signupForm.confirmPassword.$invalid }\">\n                    <div class=\"col-xs-12\">\n                        <input name=\"confirmPassword\" class=\"form-control\" ng-model=\"user.confirmPassword\" required placeholder=\"Confirm Password\" type=\"password\" compare-to=\"user.password\">\n                        <div class=\"help-block\" ng-messages=\"signupForm.confirmPassword.$error\" ng-if=\"signupForm.confirmPassword.$touched\">\n                            <p ng-message=\"required\">This field is required</p>\n                            <p ng-message=\"compareTo\">Must match the previous entry</p>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"form-group\">\n                    <label class=\"col-xs-12\">Select a camp</label>\n                    <div class=\"col-xs-12\">\n                        <select class=\"form-control\" ng-model=\"user.camp\">\n                            <option value=\"NA\">North America</option>\n                            <option value=\"SA\">South and Central America</option>\n                            <option value=\"EU\">Europe</option>\n                            <option value=\"APAC\">APAC</option>\n                            <option value=\"AF\">Africa</option>\n                        </select>\n                    </div>\n                </div>\n                <div class=\"form-group \">\n                    <div class=\"col-xs-12\">\n                        <input name=\"slackuser\" class=\"form-control\" ng-model=\"user.slackuser\" placeholder=\"Slack Username\" type=\"text\">\n                        <div class=\"help-block\">\n                            <p>Needed for Slack Lab: Please insert your Slack Username if you plan to integrate Slack into the survivor chat.</p>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"form-group \">\n                    <div class=\"col-xs-12\">\n                        <input name=\"slackteamdomain\" class=\"form-control\" ng-model=\"user.slackteamdomain\" placeholder=\"Slack Team Domain Name\" type=\"text\">\n                        <div class=\"help-block\">\n                            <p>Needed for Slack Lab: Please insert your the team name associated with your Slack user name</p>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"form-group text-center m-t-40\">\n                    <div class=\"col-xs-12\">\n                        <button class=\"btn btn-info btn-lg btn-block text-uppercase waves-effect waves-light\" type=\"submit\" ng-disabled=\"signupForm.$invalid\">Sign Up</button>\n                    </div>\n                </div>\n                <div class=\"form-group m-t-30 m-b-0\">\n                    <div class=\"col-sm-12 text-center\">\n                        <p>Have an account already? Please go to<a href=\"#/signin\" class=\"text-primary m-l-5\"><b>Sign In</b></a></p>\n                    </div>\n                </div>\n            </form>\n        </div>\n    </div>\n</section>\n"
  },
  {
    "path": "S3WebApp/S3/modules/signup/signup.js",
    "content": "angular.module('chatApp.signup', ['chatApp.utils'])\n.controller('SignupCtrl', function($scope, $state) {\n\n    $scope.errormessage = \"\";\n\n    $scope.user = {\n        name: \"\",\n        email: \"\",\n        phone: \"\",\n        password: \"\",\n        confirmPassword: \"\",\n        camp: \"\",\n        slackuser: \"\",\n        slackteamdomain: \"\"\n    };\n\n    $scope.register = function(isValid) {\n        console.log($scope.user);\n        var _username = $scope.user.email;\n        console.log(_username);\n        if (isValid) {\n            console.log(\"Submitted \" + $scope.user.name);\n\n            var poolData = {\n                UserPoolId : USER_POOL_ID,\n                ClientId : CLIENT_ID\n            };\n\n\n            var userPool = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserPool(poolData);\n\n            var attributeList = [];\n\n            var dataEmail = {\n                Name : 'email',\n                Value : $scope.user.email\n            };\n            var dataPhoneNumber = {\n                Name : 'phone_number',\n                Value : '+1' + $scope.user.phone\n            };\n            var dataName = {\n                Name : 'name',\n                Value : $scope.user.name\n            };\n\n            var dataCamp = {\n                Name : 'custom:camp',\n                Value : $scope.user.camp ? $scope.user.camp : \"null\"\n            };\n\n            var dataSlackuser = {\n                Name : 'custom:slackuser',\n                Value : $scope.user.slackuser ? $scope.user.slackuser : \"null\"\n            };\n\n            var dataSlackteamdomain = {\n                Name : 'custom:slackteamdomain',\n                Value : $scope.user.slackteamdomain ? $scope.user.slackteamdomain : \"null\"\n            };\n\n            var attributeEmail = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserAttribute(dataEmail);\n            var attributePhoneNumber = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserAttribute(dataPhoneNumber);\n            var attributeName = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserAttribute(dataName);\n            var attributeCamp = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserAttribute(dataCamp);\n            var attributeSlackuser = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserAttribute(dataSlackuser);\n            var attributeSlackteamdomain = new AWSCognito.CognitoIdentityServiceProvider.CognitoUserAttribute(dataSlackteamdomain);\n\n            attributeList.push(attributeEmail);\n            attributeList.push(attributePhoneNumber);\n            attributeList.push(attributeName);\n            attributeList.push(attributeCamp);\n            attributeList.push(attributeSlackuser);\n            attributeList.push(attributeSlackteamdomain);\n\n            userPool.signUp(_username, $scope.user.password, attributeList, null, function(err, result){\n                if (err) {\n                    console.log(err);\n                    $scope.errormessage = \"An unexpected error has occurred. Please try again. Error: \" + err;\n                    $scope.$apply();\n                    return;\n                    \n                } else {\n                    cognitoUser = result.user;\n                    console.log('user name is ' + cognitoUser.getUsername());\n                    $state.go('confirm', { });\n                }\n            });\n\n        } else {\n            $scope.errormessage = \"There are still invalid fields.\";\n            console.log(\"There are still invalid fields\");\n        }\n    };\n\n});\n"
  },
  {
    "path": "Slack/SlackService.js",
    "content": "/* == Imports == */\nvar AWS = require('aws-sdk');\nvar qs = require('querystring');\nvar https = require('https');\n\n/* == Globals == */\nvar API = {\n    region: 'INSERT YOUR REGION HERE', // the region code where you launched the stack\n    endpoint: 'INSERT YOUR API GATEWAY FQDN HERE INCLUDING THE HTTPS://' //i.e.: Something like ... https://xxxxxxxxxx.execute-api.us-east-1.amazonaws.com\n};\n\nvar table = 'YOUR DYNAMODB USERS TABLE'; // Find this in the outputs of CFN\nvar index = 'YOUR slackindex DYNAMODB INDEX NAME'; // slackindex for Users table. Find this in outputs of CFN \n\nvar token = \"INSERT YOUR TOKEN FROM SLACK HERE\"; // INSERT YOUR TOKEN FROM SLACK HERE.  This is the token from your slack team channel when you created the Slack app integration.\n\n\nvar endpoint = new AWS.Endpoint(API.endpoint);\nvar creds = new AWS.EnvironmentCredentials('AWS');\nvar docClient = new AWS.DynamoDB.DocumentClient({\n    region: API.region\n});\n\nexports.handler = function (event, context) {\n    console.log('REQUEST RECEIVED:\\n', JSON.stringify(event));\n    if (token) {\n        processEvent(event, context);\n    } else {\n        context.fail(\"Token has not been set.\");\n    }\n};\n\nvar processEvent = function(event, context) {\n    var body = event.body;\n    var params = qs.parse(body);\n    var requestToken = params.token;\n    var slackUserAuthorized = false; // We need to explicitly authorize the username in the payload from Slack.\n    \n    if (requestToken != token) {\n        console.error(\"Request token (\" + requestToken + \") does not match exptected token for Slack\");\n        context.fail(\"Invalid request token\");\n    }\n    \n    else {\n        var from = params.user_name;\n        var command = params.command;\n        var slackTeamDomain = params.team_domain;\n        var message = params.text;\n        var timestamp = \"\" + new Date().getTime();\n        \n        // Now that we have the Slack message formatted correctly, we make a request to our Chat Service\n        var post_data = JSON.stringify({\n            \"message\": message + \" (Via Slack Slash Command)\", \n            \"name\": from, \n            \"channel\": \"default\",\n            \"timestamp\": timestamp\n        });\n        \n        /* == DynamoDB Users Index Params == */\n        var ddbParams = {\n            TableName: table, \n            IndexName: index,\n            KeyConditionExpression: \"slackuser = :slackuser and slackteamdomain = :slackteamdomain\",\n            ProjectionExpression: \"slackuser, slackteamdomain\",\n            ExpressionAttributeValues: {\n                \":slackuser\": from,\n                \":slackteamdomain\": slackTeamDomain\n            }\n        };\n    \n        /* == Query Users table to confirm that incoming Slack username exists and is tied to an authorized survivor == */\n        docClient.query(ddbParams, function(err, data) {\n            if (err) {\n                console.log('Error. Unable to send message from Slack. DynamoDB querying failed. RESULT: ' + JSON.stringify(err));\n                context.fail(new Error('DynamoDB Error: ' + err));    \n            }\n            else {\n                \n                /* == FOR TESTING == */\n                /*\n                console.log('Query response is: ' + JSON.stringify(data));\n                console.log('count is: ' + data.Count);\n                console.log('slack username incoming is: ' + from);\n                console.log('slack team domain incoming is: ' + slackTeamDomain);\n                */\n    \n                // If no records returned then fail the message with not authorized message.\n                if (data.Count < 1) {\n                    console.log('Unauthorized user. Invalid Slack username and team domain. No matching users found.');\n                    context.done('The incoming Slack username and team do not match any existing registered survivors. Please sign up to the suvivor chat first, and make sure to register your Slack User name and team domain (name) at sign up.');\n                } else {\n                    // Parse result and get Slack username.\n                    data.Items.forEach(function(item) {\n                        console.log('Incoming message from: ' + item.slackuser + ' with team domain: ' + item.slackteamdomain);\n                    });\n                    // If Slack user is authorized then call /message API endpoint with Slash command payload\n                    postToChatService(post_data, context);    \n                }\n            }\n        });\n    }\n}\n\nfunction postToChatService(post_data, context) {\n    // Create signed AWS request to API endpoint\n    var req = new AWS.HttpRequest(endpoint);\n    req.method = 'POST';\n    req.port = '443';\n    req.path = '/ZombieWorkshopStage/zombie/message';\n    req.region = API.region;\n    req.headers['presigned-expires'] = false;\n    req.headers['Host'] = endpoint.host;\n    req.body = post_data;\n    \n    console.log('host is ' + endpoint.host);\n    var signer = new AWS.Signers.V4(req,'execute-api');\n    signer.addAuthorization(creds, new Date());\n\n    var send = new AWS.NodeHttpClient();\n    \n    send.handleRequest(req, null, function(httpResp) {\n        var respBody = '';\n        httpResp.on('data', function (chunk) {\n            respBody += chunk;\n        });\n        httpResp.on('end', function (chunk) {\n            console.log('Response: ' + respBody);\n            context.succeed(\"Your slack message was sent to survivors. Message sent was: \" + JSON.parse(post_data).message);\n        });\n    }, function(err) {\n        console.log('Error: ' + err);\n        context.fail('Lambda failed with error ' + err);\n    });\n}\n    "
  },
  {
    "path": "Twilio/TwilioProcessing.js",
    "content": "// This function processes incoming data from Twilio, formats it and makes an HTTPS POST request to the the Chat Service API endpoint\n\n/* == Imports == */\nvar querystring = require('querystring');\nvar AWS = require('aws-sdk');\nvar path = require('path');\n\n/* == Globals == */\nvar API = {\n    region: 'INSERT YOUR REGION CODE HERE', //i.e 'us-east-1'\n    endpoint: 'INSERT YOUR API GATEWAY URL HERE INCLUDING THE HTTPS://' // ie: 'https://xxxxxxx.execute-api.us-east-1.amazonaws.com'\n};\n\nvar table = \"YOUR DYNAMODB USERS TABLE\"; //INSERT THE NAME OF YOUR DYNAMODB USERS TABLE\nvar index = \"YOUR phoneindex DYNAMODB INDEX NAME\"; //INSERT THE NAME OF YOUR phoneindex from DynamoDB.\n\nvar endpoint = new AWS.Endpoint(API.endpoint);\nvar creds = new AWS.EnvironmentCredentials('AWS');\nvar docClient = new AWS.DynamoDB.DocumentClient({\n    region: API.region\n});\n\nexports.handler = function(event, context) {\n    \n    var params = querystring.parse(event.postBody);\n    var from = params.From;\n    var timestamp = \"\" + new Date().getTime();\n    var numMedia = params.NumMedia;\n    var message;\n    var mediaURL;\n    \n    /* == DynamoDB Params == */\n    var ddbParams = {\n        TableName: table,\n        IndexName: index,\n        KeyConditionExpression: \"phone = :from\",\n        ProjectionExpression: \"userid, phone\",\n        ExpressionAttributeValues: {\n            \":from\": from\n        }\n    };\n    \n    // If Message sent and Image sent, concat image url to message.\n    if (params.Body !== null || params.Body !== 'null') {\n        message = params.Body;\n        // If picture was sent along, append to message string.\n        if (numMedia > 0) {\n            mediaURL = params.MediaUrl0;        \n            message = message + \" [IMAGE SENT]: \" + mediaURL;  \n        }\n    }\n\n    // If message was not sent but image URL was sent, then set message to image URL\n    else if ((params.Body == null || params.Body == 'null') && numMedia > 0) {\n        mediaURL = params.MediaUrl0;\n        message = \"Image sent: \" + mediaURL;\n    }\n    \n    // If no message or media sent, throw error.\n    else {\n        return context.fail(\"There was an error. Try again.\");\n    }\n    \n    // Now that we have the Twilio data formatted correctly, we make a request to our Chat Service\n    var post_data = JSON.stringify({\n        \"message\": message, \n        \"name\": from, \n        \"channel\": \"default\",\n        \"timestamp\": timestamp\n    });\n    \n    \n    /* == Query Users table to confirm that incoming phone number exists and is tied to an authorized survivor == */\n    docClient.query(ddbParams, function(err, data) {\n        if (err) {\n            console.log('Error. Unable to insert text message. DynamoDB querying failed. RESULT: ' + JSON.stringify(err));\n            context.fail(new Error('DynamoDB Error: ' + err));    \n        }\n        else {\n            \n            // FOR TESTING\n            //console.log('Query response is: ' + JSON.stringify(data));\n            //console.log('count is: ' + data.Count);\n            \n            // If no records returned then fail the message with not authorized message.\n            if (data.Count < 1) {\n                context.done('Your phone number is not authorized to send texts to survivors. There were no phone numbers matching yours. Please sign up first.');\n                console.log('Text from unauthorized number. No records matching that number');\n            } else {\n                // Parse result and get phone.\n                data.Items.forEach(function(item) {\n                    console.log('Incoming message from: ' + item.phone);\n                });\n                postToChatService(post_data, context);  \n            }\n        }\n    });    \n}\n\nfunction postToChatService(post_data, context) {\n    var req = new AWS.HttpRequest(endpoint);\n\n    req.method = 'POST';\n    req.path = '/ZombieWorkshopStage/zombie/message';\n    req.port = '443';\n    req.region = API.region;\n    req.headers['presigned-expires'] = false;\n    req.headers['Host'] = endpoint.host;\n    req.body = post_data;\n    \n    console.log('host is ' + endpoint.host);\n    var signer = new AWS.Signers.V4(req,'execute-api');  // es: service code\n    signer.addAuthorization(creds, new Date());\n\n    var send = new AWS.NodeHttpClient();\n    send.handleRequest(req, null, function(httpResp) {\n        var respBody = '';\n        httpResp.on('data', function (chunk) {\n            respBody += chunk;\n        });\n        httpResp.on('end', function (chunk) {\n            console.log('Response: ' + respBody);\n            context.succeed('Text received in chat room. Survivors have been notified. Message sent was: ' + JSON.parse(post_data).message);\n        });\n    }, function(err) {\n        console.log('Error: ' + err);\n        context.fail('Lambda failed with error ' + err);\n    });\n}"
  },
  {
    "path": "cognitoLambdaTrigger/index.js",
    "content": "\"use strict\";\nconsole.log('Loading function');\nvar AWS = require('aws-sdk');\nvar moment = require('moment');\n\nexports.handler = function(event, context, callback) {\n    console.log(event);\n    // set the appropriate region for AWS api calls\n    const stackName = context.functionName.split('-CognitoLambdaTrigger')[0];\n    console.log('stackname is: ' + stackName);\n\n    const region = context.functionName.split('-CognitoLambdaTrigger-')[1]; // The region containing the DDB table that should be queried.\n    console.log('stack region is: ' + region);\n    const dynamoConfig = {\n        sessionToken: process.env.AWS_SESSION_TOKEN,\n        region: region\n    };\n    const docClient = new AWS.DynamoDB.DocumentClient(dynamoConfig);\n    const ddbTable = stackName + '-users';\n    console.log('ddbtable is: ' + ddbTable);\n\n    let params = {};\n\n    if (event.triggerSource === \"PostConfirmation_ConfirmSignUp\") {\n        console.log(event.request.userAttributes['phone_number']);\n        params = {\n            TableName: ddbTable,\n            Item: {\n                userid: event.userName,\n                phone: event.request.userAttributes['phone_number']\n            }\n        };\n        \n        docClient.put(params, function(err, data) {\n            if (err) {\n                console.log(err);\n                return callback(err, null);\n            }\n            return callback(null, event);\n        });\n\n    } else if (event.triggerSource === \"PreAuthentication_Authentication\") {\n        params = {\n            TableName: ddbTable,\n            Key: { userid : event.userName },\n            UpdateExpression: 'set camp = :c, slackuser = :s, confirmed = :v, slackteamdomain = :t',\n            ExpressionAttributeValues: {\n                ':c' : event.request.userAttributes['custom:camp'],\n                ':s' : event.request.userAttributes['custom:slackuser'] ? event.request.userAttributes['custom:slackuser'] : \"null\",\n                ':t' : event.request.userAttributes['custom:slackteamdomain'],\n                ':v' : event.request.userAttributes['email_verified']\n            },\n            ReturnValues:\"UPDATED_NEW\"\n        };\n        docClient.update(params, function(err, data) {\n            if (err) {\n                console.error(\"Unable to update item. Error JSON:\", JSON.stringify(err, null, 2));\n                return callback(err, null);\n            } else {\n                console.log(\"UpdateItem succeeded:\", JSON.stringify(data, null, 2));\n                return callback(null, event);\n            }\n        });\n    } else {\n        // not a valid trigger source\n        return callback(\"Invalid trigger source.\", null);\n    }\n\n\n};\n"
  },
  {
    "path": "zombieSensor/lambda/exampleSNSFunction.js",
    "content": "/* == Imports == */\nvar querystring = require('querystring');\nvar AWS = require('aws-sdk');\nvar path = require('path');\n\n/* == Globals == */\nvar API = {\n    region: 'INSERT YOUR REGION CODE HERE', //i.e 'us-east-1'\n    endpoint: 'INSERT YOUR API GATEWAY URL HERE INCLUDING THE HTTPS://'\n};\n\nvar endpoint = new AWS.Endpoint(API.endpoint);\nvar creds = new AWS.EnvironmentCredentials('AWS');\n\nexports.handler = function(event, context) {\n    \n    var params = querystring.parse(event.postBody);\n    var from = params.From;\n    var timestamp = \"\" + new Date().getTime();\n    var numMedia = params.NumMedia;\n    var message;\n    var mediaURL;\n    var phoneAuthorized = false; //will set to true when incoming phone is validated\n\n    //console.log('Received event:', JSON.stringify(event, null, 2));\n    var snsData = JSON.parse(event.Records[0].Sns.Message);\n    console.log('From SNS:', snsData);\n    \n    var message = snsData.message;\n\n    var post_data = JSON.stringify({\n            \"message\": message, \n            \"name\": \"SYSTEM ALERT\", \n            \"channel\": \"default\"\n            \n    });\n\n    postToChatService(post_data, context);    \n    \n}\n\nfunction postToChatService(post_data, context) {\n    var req = new AWS.HttpRequest(endpoint);\n\n    req.method = 'POST';\n    req.path = '/ZombieWorkshopStage/zombie/message';\n    req.port = '443';\n    req.region = API.region;\n    req.headers['presigned-expires'] = false;\n    req.headers['Host'] = endpoint.host;\n    req.body = post_data;\n    \n    console.log('host is ' + endpoint.host);\n    var signer = new AWS.Signers.V4(req,'execute-api');  // es: service code\n    signer.addAuthorization(creds, new Date());\n\n    var send = new AWS.NodeHttpClient();\n    send.handleRequest(req, null, function(httpResp) {\n        var respBody = '';\n        httpResp.on('data', function (chunk) {\n            respBody += chunk;\n        });\n        httpResp.on('end', function (chunk) {\n            console.log('Successfully processed HTTPS response');\n            context.succeed('Alert delivered: ' + JSON.parse(post_data).message);\n        });\n    }, function(err) {\n        console.log('Error: ' + err);\n        context.fail('Lambda failed with error ' + err);\n    });\n}"
  },
  {
    "path": "zombieSensor/zombieIntelEdisonCode/main.js",
    "content": "var mraa = require('mraa'); //require mraa\nvar AWS = require('aws-sdk'); //require AWS SDK\n// For variables that ask for region input, please use region code such as us-west-2 or us-east-1\nAWS.config.update({accessKeyId: 'ENTER ACCESS KEY HERE', secretAccessKey: 'ENTER SECRET ACCESS KEY HERE', region: 'ENTER REGION HERE'}); //configure AWS credentials\nvar sns = new AWS.SNS({region: 'ENTER REGION HERE'}); // establish the SNS connection\n\nvar zombieSensor = new mraa.Gpio(6); //setup digital read on Digital pin #6 (D6)\nzombieSensor.dir(mraa.DIR_IN); //set the gpio direction to input\n\nvar city = \n  [ \n    [\"London\",51.507351,-0.127758],\n    [\"Las Vegas\",36.169941,-115.139830],\n    [\"New York\",40.712784,-74.005941],\n    [\"Singapore\",1.352083,103.819836],\n    [\"Sydney\",-33.867487,151.206990],\n    [\"Paris\",48.856614,2.352222],\n    [\"Seattle\",47.606209,-122.332071],\n    [\"San Francisco\",37.774929,-122.419416],\n    [\"Montreal\",45.501689,-73.567256],\n    [\"Rio De Janeiro\",-22.906847,-43.172896],\n    [\"Beijing\",39.904211,116.407395],\n    [\"Moscow\",55.755826,37.617300],\n    [\"Buenos Aires\",-34.603684,-58.381559],\n    [\"New Dehli\",28.613939,77.209021],\n    [\"Cape Town\",-33.924869,18.424055],\n    [\"Lagos\",6.524379,3.379206],\n    [\"Munich\",48.135125,11.581981]\n  ]\n\nperiodicActivity(); //call the periodicActivity function\n\n//logic starts here.\n\n\n//Function to generate a randomNumber to be used for selecting random cities\nfunction roundedNumberFunc(callback) {\n\n  var randomNumber =  Math.random() * (15 - 0 + 1) + 0;\n  var roundedNumber = Math.round(randomNumber)\n  generateAlert(roundedNumber, city) //call the function to send the alert to SNS\n\n}\n\n// function to form the message with a random city and send it to SNS\nfunction generateAlert(roundedNumber, city) {\n\n  var message = '{\"message\":\"A Zombie has been detected in ' + city[roundedNumber][0] + '!\", \"value\":\"1\", \"city\":\"' + city[roundedNumber][0] + '\", \"longitude\":\"' + city[roundedNumber][2] + '\", \"latitude\":\"' + city[roundedNumber][1] + '\"}'\n  var params = {\n    Message: message, /* required */\n    Subject: \"Zombie Alert\",\n    TopicArn: \"ENTER YOUR TOPIC ARN HERE\"\n  };\n  sns.publish(params, function(err, data) {\n    if (err) console.log(err, err.stack); // an error occurred\n    else     console.log(data + \" Message successfully sent to SNS\");           // successful response\n  });\n\n  console.log(\"Zombie Detected\") \n}\n\n// Period function to run every second and read the sensor vlaue.\nfunction periodicActivity() {\n  var sensorValue =  zombieSensor.read(); //read the digital value of the Grove PIR Motion Sensor\n    if (sensorValue == 1) { \n    roundedNumberFunc() // Sensor value is 1 (motion detected), start function to generate random number and publish message to SNS\n    }\n    else {\n      console.log(\"The Coast is Clear\") //No motion detected\n    };\n  setTimeout(periodicActivity,1000); //call the indicated function after 1 second (1000 milliseconds)\n}\n\n"
  },
  {
    "path": "zombieSensor/zombieIntelEdisonCode/package.json",
    "content": "{\n  \"name\": \"zombieSensor\",\n  \"description\": \"Intel Edison device code to publish messages to SNS upon detection of motion\",\n  \"version\": \"0.0.1\",\n  \"main\": \"main.js\",\n  \"engines\": {\n    \"node\": \">=0.10.0\"\n  },\n  \"dependencies\": {\n    \"mraa\": \"\",\n    \"aws-sdk\": \"\"\n  }\n}\n"
  }
]